tp5 上传视频方法
控制器调用
/**
* 视频上传
*/
public function video_add(){
if (request()->isPost()){
$video = $_FILES['video'];
$res = upload_file($video);
return $res;
}
}
公共方法
/**
*视频上传
* @param $files
* @param string $path
* @param array $imagesExt
* @return string
*/
function upload_file($files, $path = "./upload/video",$imagesExt=['mp4'])
{
// 判断错误号
if ($files['error'] == 00) {
$ext = strtolower(pathinfo($files['name'],PATHINFO_EXTENSION));
// 判断文件类型
if (!in_array($ext,$imagesExt)){
return 1000;//非法文件类型
}
// 判断是否存在上传到的目录
if (!is_dir($path)){
mkdir($path,0777,true);
}
// 生成唯一的文件名
$fileName = md5(uniqid(microtime(true),true)).'.'.$ext;
// 将文件名拼接到指定的目录下
$destName = $path."/".$fileName;
// 进行文件移动
if (!move_uploaded_file($files['tmp_name'],$destName)){
return 1001;//文件上传失败
}
return $destName;//上传成功,返回上传路径
} else {
// 根据错误号返回提示信息
switch ($files['error']) {
case 1:
echo 2000;//上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值
break;
case 2:
echo 2001;//上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值
break;
case 3:
echo 2002;//文件只有部分被上传
break;
case 4:
echo 2003;//没有文件被上传
break;
case 6:
echo 2004;//找不到临时文件夹
break;
case 7:
echo 2005;//文件写入错误
break;
}
}
}
tp5 上传视频方法的更多相关文章
- tp5 上传视频到七牛云
废话少说直接上代码 html <!DOCTYPE html> <html> <head> <title></title> </head ...
- mvc实现上传视频预览
上个项目中用到了上传视频,本来打算用百度的webuploader做的,但是webuploader可能有个毛病就是不能上传太大的东西. 于是乎,只能换个方法做了啊,看了半天最终决定用传统的uploade ...
- Android-调用优酷SDK上传视频
最近在研究用优酷的SDK来进行视频上传的功能,由于优酷的SDK只是提供了一个上传的sample code,没有涉及到授权的过程,对于新手来说,可能非常棘手,现在分享一下我的思路: 程序实现前我们先 ...
- ASP.NET播客(留言时间,投票IP,留言限字数,上传视频)
留言发布时间功能: 界面: 前台代码: 在Datalist控件中: 在<%#getIsDate(Convert.ToString(Eval("issuanceDate"))) ...
- ajax 异步上传视频带进度条并提取缩略图
最近在做一个集富媒体功能于一身的项目.需要上传视频.这里我希望做成异步上传,并且有进度条,响应有状态码,视频连接,缩略图. 服务端响应 { "thumbnail": "/ ...
- java使用ffmpeg实现上传视频的转码,提取视频的截图等功能
ffmpeg视频采集功能非常强大,不仅可以采集视频采集卡或USB摄像头的图像,还可以进行屏幕录制,同时还支持以RTP方式将视频流传送给支持RTSP的流媒体服务器,支持直播应用. 1.能支持的格式 ff ...
- DedeCMS上传视频
DedeCMS建站方便快捷,但是在上传视频时会出现问题,主要是文件格式与大小限制,需要修改配置文件,修改的地方主要有: 1.修改 DedeCMS系统配置参数--附件设置--允许的多媒体软件类型(以MP ...
- 在Windows Server 2008 R2 Server中,上传视频遇到的问题(一)
在Windows 2008 R2 Server中,上传视频不能播放,以及服务器大小限制问题,这里记录我的解决方法,以免再次遇到,无所适从. 1.上传视频不能播放 打开IIS,找到“MIME类型”,如下 ...
- KindEditor解决上传视频不能在手机端显示的问题
KindEditor自带的上传视频生成的HTML代码为<embed>,在手机端并不支持.于是可以自己在控件里增加生成video标签相关代码. 参考https://www.jianshu.c ...
随机推荐
- Linux标准重定向-输入-输出-错误-多重
一切皆文件,都是文件的操作 三种I/O设备 标准的输入输出 程序:指令+数据 读入数据:Input 输出数据:Output 系统中打开一个文件系统自动分配文件描述符,除了0,1,2是固定的,其他的都是 ...
- maven 项目问题集锦
问题1: 新建的maven项目,没有src/main/java 源文件夹,创建时提示已经存在,创建不了 解决方法: 右键build path -> configure build path -& ...
- 绕过CDN查找真实IP的方法
正常情况下,通过cmd命令可以快速找到域名对应IP,最常见的命令如ping.nslookup.但很多站点出于用户体验和安全的角度,使用CDN加速,将域名解析到CDN,这时候就需要绕过CDN来查找真实I ...
- CVE-2017-6090&msf的基本使用(一)
渗透环境的搭建 phpcollab的下载:phpCollab-v2.5.1.zip 解压到www目录,给www目录权限,因为这个漏洞需要写的权限 chmod 777 wwww 基本环境 配置 mysq ...
- CodeForces 1419F Rain of Fire
题意 不想写. 题解 场上想了 1h+ 无果,一到场外就口胡出来了,我真是个 sb. 首先注意到如果 \(t\) 满足条件那么 \(t+1\) 也会满足,所以答案具有单调性,可以二分,于是现在只需要考 ...
- pinpoint部署管理
本次pinpoint安装使用了docker环境安装,需要预先docker运行环境 1.安装docker环境 2.获取pinpoint-docker,安装命令 git clone https://git ...
- Learn day6 模块pickle\json\random\os\zipfile\面对对象(类的封装 操作 __init__)
1.模块 1.1 pickle模块 # ### pickle 序列化模块 import pickle """ 序列化: 把不能够直接存储的数据变得可存储 反序列化: 把数 ...
- java查询elasticsearch聚合
java查es多分组聚合: SearchRequestBuilder requestBuilderOfLastMonth = transportClient.prepareSearch(TYPE_NA ...
- Linux杂谈:进程锁核+实时线程导致的读写锁死循环
发现问题 公司项目测试的时候,发现运行一段时间后会出现cpu百分之百的情况. 想着可能是哪里出现了死循环,于是打算用gdb跟一下,结果gdb居然无法attach到进程...... 定位问题 查了查去, ...
- (四)HTTP消息报头
HTTP消息由客户端到服务器的请求和服务器到客户端的响应组成.请求消息和响应消息都是由开始行,消息报头,空行(只有CRLF的行),消息正文组成.对于请求消息,开始行就是请求行:对于响应消息,开始行就是 ...