我这里加了 封面图片 可以不理睬! 我没有存oss.

 阿里的OSS 自己可以去官网下载 我这里放到  Vendor 下的.

  1 #  注意这里OSS中 请设置 存储空间名称为公共的 才能直接使用这里返回的地址进行播放  不然 需要加密呗
use OSS\Core\OssException; # 必须
use OSS\OssClient; # 必须
class ClasstimeAction extends CommonAction
{
public function add_sub()
{
header('Content-type:text/html,charset:ust-8');
$file = $_FILES['file'];
$filTtype = $file['name'];//文件名
$fileName = substr($filTtype,strrpos($filTtype,'.'));
$filetype = array('.jpg', '.jpeg', '.gif', '.bmp', '.png');
$str = rand(1,99999);
$useName = date('Ymd').$str;
$picNewName = $useName.$fileName;
$upload_path = "../Public/Rbac/file/";
if (!in_array($fileName, $filetype))
{
$this->success("图片格式错误","__APP__/Public/index");
exit;
}
if(!is_uploaded_file($file['tmp_name'])){
$this->success("请使用正确途径上传图片","__APP__/Public/index");
exit;
}
if(!move_uploaded_file($file['tmp_name'],$upload_path.$picNewName)){
$this->success("图片存储失败 请重新上传","__APP__/Public/index");
exit;
} #视频
$video = $_FILES['video'];
$videoTtype = $video['name'];//文件名
$videoName = substr($videoTtype,strrpos($videoTtype,'.'));
$videotype = array('.mp4'); // 自定 我这随便写一个
$str = rand(1,99999);
$useName = date('Ymd').$str;
$videoNewName = $useName.$videoName;
$upload_path = "../Public/Rbac/video/";
if (in_array($videoName, $videotype)) {
if (is_uploaded_file($video['tmp_name'])) {
if (move_uploaded_file($video['tmp_name'],$upload_path.$videoNewName)) { vendor('OSS.autoload'); // 引入 oss上传类
$accessKeyId = "xxxxxxxxxx"; //去阿里云后台获取秘钥
$accessKeySecret = "xxxxxxxxxx";         //去阿里云后台获取秘钥
$endpoint = "xxxxxxxxxx";       //你的阿里云OSS地址 $object = date('Y-m-d').'/'.$videoTtype;     //想要保存文件的名称
$file = $upload_path.$videoNewName; //文件路径,必须是本地的。
$bucket = "xxxxxxxxxx";                      // 存储空间。
  
try{
$ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
$getOssInfo = $ossClient->uploadFile($bucket, $object, $file);
if($getOssInfo['info']['http_code'] == 200){
unlink($file); # 上传成功删除本地文件
$curl = $getOssInfo['info']['url'];
# 添加数据库
$time = $_POST['classsc'].':'.$_POST['classsc1'];
$data['addresspic'] = $picNewName;
$data['addressvideo'] = $curl;
$data['classtime'] = $_POST['classtime'];
$data['classjj'] = $_POST['classjj'];
$data['classsc'] = $time;
$data['cid'] = $_REQUEST['code'];
$data['type'] = $_REQUEST['testSee'];
$data['syrenqun'] = $_REQUEST['classshiyin'];
$data['status'] = 1;
$data['ctime'] = time();
$data['user'] = $_SESSION['name'];
D("classtime")->add($data);
$this->success("操作成功");
}else{
$this->error("上传OSS异常");
}
// 抛出异常
} catch(OssException $e) {
printf(__FUNCTION__ . ": FAILED\n");
printf($e->getMessage() . "\n");
return;
} }else{
$this->success("视频存储失败 请重新上传","__APP__/Public/index");
exit;
}
}else{
$this->success("请使用正确途径上传视频","__APP__/Public/index");
exit;
}
}else{
$this->success("请上传正确的视频格式 支持格式(mp4)","__APP__/Public/index");
exit;
}
}
}

OSS 视频存储的更多相关文章

  1. iOS使用阿里云OSS对象存储 (SDK 2.1.1)

    最近项目中用到了阿里云OSS对象存储,用来存储APP中图片.音频等一些数据.但坑爹的阿里云居然在11月20日将SDK版本更新到了2.1.1,然而网上给出的教程都是1.*版本的(针对iOS),两个版本所 ...

  2. 架构师小跟班:教你从零开始申请和配置七牛云免费OSS对象存储(不能再详细了)

    背景 之前为了练习Linux系统使用,在阿里云上低价买了一台服务器(网站首页有活动链接,传送门),心里想反正闲着也是闲着,就放了一个网站上去.现在随着数据越来越多,服务器空间越来越吃紧,我就考虑使用七 ...

  3. phpcmsv9 阿里云OSS云存储整合教程

    该教程算不上是phpcmsv9阿里云oss插件,所以整个修改及其代码覆盖前请一定记得备份.还有一点就是后台发布文章时上传的附件还是会保存在你的服务器上,基于以下原因:1.个人的需求是前台页面需要使用t ...

  4. 腾讯云点播视频存储(Web端视频上传)

    官方文档 前言 所谓视频上传,是指开发者或其用户将视频文件上传到点播的视频存储中,以便进行视频处理.分发等. 一.简介 腾讯云点播支持如下几种视频上传方式: 控制台上传:在点播控制台上进行操作,将本地 ...

  5. .Net程序测试阿里云OSS开放存储服务

    阿里云官网有提供OSS相关的操作API文档和.Net程序的 SDK,也可以在这里下载OSS相关文件 但是API文档里面的都是通过http请求和响应的消息来描述如何操作OSS的 而一般在程序中需要的是O ...

  6. 阿里云OSS的 存储包、下行流量包、回流流量包 三者有啥关系

    阿里云OSS的 存储包.下行流量包.回流流量包 三者有啥关系 一.总结 一句话总结: 你把文件放 oss,会占用存储空间,存储包覆盖这部分费用 你访问存储在 oss 里面的文件,会产生下行流量,就是从 ...

  7. Java使用阿里云OSS对象存储上传图片

    原 Java使用阿里云OSS对象存储上传图片 2017年03月27日 10:47:28 陌上桑花开花 阅读数 26804更多 分类专栏: 工作案例总结 版权声明:本文为博主原创文章,遵循CC 4.0 ...

  8. 22.Java面试学习平台-整合OSS对象存储

    SpringCloud实战项目全套学习教程连载中 PassJava 学习教程 简介 PassJava-Learning项目是PassJava(佳必过)项目的学习教程.对架构.业务.技术要点进行讲解. ...

  9. 在搞OSS对象存储中发现了自身的一些不足

    最近在搞OSS对象存储,发现了自身的一些不足,趁着有空在此做个总结,希望能够帮助到大家!!! 首先解释下OSS,Object Storage Service(对象存储服务),一般的云公司,都会提供OS ...

随机推荐

  1. PHP20-challenge10

      今天咩,说一个关于php的题目,里面主要主要牵扯到截断的知识点,这让我多了解了一些机制. 1.截断   截断,简单来说就是16进制的00,代表空.其实,那些输出语句函数就是凭借语句后面这个我们看不 ...

  2. 批处理(.bat脚本)基本命令语法

    .bat脚本基本命令语法   目录批处理的常见命令(未列举的命令还比较多,请查阅帮助信息)     1.REM 和 ::     2.ECHO 和 @     3.PAUSE     4.ERRORL ...

  3. jquery 事件委托(利用冒泡)

    将事件绑定在父元素上,格式$(父元素).on("事件名称","子元素选择器",function(方法体){}) <!DOCTYPE html> &l ...

  4. Linux日志文件分割

    经常有这样的情况,日志文件或者数据文件会变得很庞大,那么每次对这些目标文件的访问或者修改就会变得极其耗时.因而引发一些性能问题,但是如果对这些目标文件进行分割,限定其大小,那么每次的访问或者修改就会变 ...

  5. JS 获取屏幕的宽度和高度,各种方式

      Javascript: 网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网页可见区域宽: document ...

  6. 如何查看Firefox中保存的登录密码

    问:以前使用Firefox浏览器登录一个论坛,并且临时申请了一个账号,在使用Firefox登录时选择让它记住密码了,后来,我忘记了那个论坛的密码,但是可以使用Firefox直接登录.现在能不能查看密码 ...

  7. php新增的一些特性

    php新增的特性,只是略微整理,并不完全. 一.php5.3添加的新特性 1.?:简化的三元运算符 <?php $cur = $cur ? $cur : 1; $cur = $cur ?: 1; ...

  8. 一、MySQL的连接建立与权限

    一.MySQL的连接建立与权限 写这些的目的一是记录下工作这几年所学,算是成长脚印吧.二是复习一遍,也给自己当笔记看,通篇观点都属于个人理解较多.读者观看的时候也需要自己判断下是否正确,另外,记下一段 ...

  9. 10.9h5日记

    一.单位 1.px是基本的单位,像素 2.em也是一个单位,使用方式,用元素父级的字体大小乘以em前的数字,父级没有就向上一个父级找, 直到body为止,如果body没有,就用默认的字体大小16px ...

  10. 制作根文件系统之Busybox init进程的启动过程分析

    先来介绍一下什么是Busybox:它是将众多的UNIX命令集合进一个很小的可执行程序中. 在制作根文件系统之内核如何启动init进程中遗留了一个问题是/linuxrc是内核启动的第一个应用程序,那么它 ...