layui+tp5.0上传视频到阿里云
前端
htnl:
<div style="margin-left: 30px">
<button type="button" class="layui-btn" id="test5"><i class="layui-icon"></i>上传视频</button>
<input type="text" id="video" value="">
</div>
js:
layui.use('upload', function () {
var $ = layui.jquery
, upload = layui.upload;
upload.render({
elem: '#test5'
, url: 'url' //改成你自己的上传接口
, accept: 'video' //视频
, done: function (res) {
if (res == '失败') {
layer.msg('上传失败');
return;
}
$('#video').val(res);
layer.msg('上传成功');
}
});
});
后端
use OSS\Core\OssException;
use OSS\OssClient;
use think\Request;
require_once APP_PATH . '/../extend/aliyun-oss/autoload.php';
public function pupload()
{
// 上传文件
$request = Request::instance();
$file = $request->file('file');//获取文件
$info = $file->move('./upload');
$getSaveName = str_replace("\\", "/", $info->getSaveName());
$file = $_SERVER['DOCUMENT_ROOT'] . '/public/upload/' . $getSaveName;
$KeyId = config('alioss.KeyId');
$KeySecret = config('alioss.KeySecret');
$EndPoint = config('alioss.EndPoint');
$bucket = config('alioss.Bucket');//oss中的文件上传空间
$ossClient= new OssClient($KeyId,$KeySecret,$EndPoint);
$object = 'video'.'/'.date('Y-m-d', time()).'/'.sha1(date('YmdHis', time()) . uniqid()) . '.' . $getSaveName;//想要保存文件的名称
try {
$arr = $ossClient->uploadFile($bucket, $object, $file);
$video = $arr['info']['url'];
return json_encode($video);
} catch (OssException $e) {
return json_encode('失败');
} // 获取图片信息。
}
php.ini配置修改
max_execution_time = 600
max_input_time = 600
memory_limit = 32m
file_uploads = on
upload_tmp_dir =
upload_max_filesize = 32m
post_max_size = 32m