我这里加了 封面图片 可以不理睬! 我没有存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. XMPP openfire Smack 即时通讯

    重新整理下这篇文章. 这篇文章的主要任务是使用AndroidStudio,通过Openfire,利用XMPP协议完成一个可以即时通讯.拥有好友系统的聊天软件. 一.服务器配置与相关库 理论不多说,只谈 ...

  2. JDK1.5 Excutor 与ThreadFactory

    Excutor 源码解读: /** * An object that executes submitted {@link Runnable} tasks. This * interface provi ...

  3. 37-Arrays.sort() 由大到小排序 和 对象数组排序

    1. 由大到小排序: 2. 对象数组排序: 1. 由大到小排序: 注意:必需是Integer 类型的数组!!! 方法一: import java.util.Arrays; import java.ut ...

  4. position的absolute与fixed,absolute与relative共同点与不同点

    absolute与fixed 共同点: (1) 改变行内元素的呈现方式,display被置为block: (2) 让元素脱离普通流,不占据空间: (3) 默认会覆盖到非定位元素上 不同点: absol ...

  5. ALV界面显示

    PERFORM ADD.   IS_LAYOUT_LVC-CWIDTH_OPT = 'X'.   IS_LAYOUT_LVC-SEL_MODE = 'A'. CALL FUNCTION 'REUSE_ ...

  6. stark组件开发之提取公共视图函数

     路由问题, 已经解决! 然后就是视图函数的问题了: 不想重复写的解决途径就是, python  类的继承了! 写一个基类, 基类定义 增删改查. 然后其他的,全部去继承他! from django. ...

  7. js去除字符串空格(空白符)

    使用js去除字符串内所带有空格,有以下三种方法: ( 1 ) replace正则匹配方法 去除字符串内所有的空格:str = str.replace(/\s*/g,""); 去除字 ...

  8. C# 判断ip地址是否正确

    最后要用一方法判断ip地址是否正确,直接用.Net现成的类,方法如下: string ipStr="192.168.222.333"; IPAddress ip; if(IPAdd ...

  9. c10k C10M

    高性能网络编程(二):上一个10年,著名的C10K并发连接问题     阅读(22369) | 评论(9)收藏10 淘帖1 赞4   JackJiang Lv.9    1 年前 | |只看大图 1. ...

  10. iOS.ARM-Assembly

    ARM Assembly for iOS with Xcode 0. Introduction 0.1 arm asm vs. arm64(ARMv8) asm AArch64: 0.2 __arm6 ...