ThinkPHP实现JavaScript上传大视频到七牛云实
admin
2023-01-28 09:26:29
0

1.通过Composer安装七牛云PHP SDK,官方文档https://developer.qiniu.com/kodo/sdk/1283/javascript
2.后端核心代码如下:

use Qiniu\Auth as Auth;
use Qiniu\Config;
use Qiniu\Storage\BucketManager;
use Qiniu\Storage\UploadManager;
......
......
//上传七牛云
    function qiniu_upload(){
        set_time_limit(120);
        ini_set('memory_limit','2000M');
        if(!empty($_FILES['file']))
        {
            $file = request()->file('file');
            // 要上传图片的本地路径
            $filePath = $file->getRealPath();
            $ext = pathinfo($file->getInfo('name'), PATHINFO_EXTENSION);  //后缀
            //获取当前控制器名称
            $controllerName = 'index';
            // 上传到七牛后保存的文件名
            $key =substr(md5($file->getRealPath()) , 0, 5). date('YmdHis') . rand(0, 9999) . '.' . $ext;
            // 需要填写你的 Access Key 和 Secret Key
            $accessKey = config('ACCESSKEY');
            $secretKey = config('SECRETKEY');
            // 构建鉴权对象
            $auth = new Auth($accessKey, $secretKey);
            // 要上传的空间
            $bucket = config('BUCKET');
            $domain = config('DOMAINImage');
            $token = $auth->uploadToken($bucket);
            // 初始化 UploadManager 对象并进行文件的上传
            $uploadMgr = new UploadManager();
            // 调用 UploadManager 的 putFile 方法进行文件的上传
            list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);
            if ($err !== null) {
                retErr($err);
            } else {
                //返回图片的完整URL
                $url = $domain.$ret['key'];
                echo $url;
            }
        }
    }

3.前端上传组件使用plupload,官方下载地址https://www.plupload.com/
4.选择一款想用的demo,核心代码如下:

......
......




......
......

        

Your browser doesn't have Flash, Silverlight or HTML5 support.

...... ...... $(function() { // Setup html5 version $("#uploader").pluploadQueue({ // General settings runtimes : 'html5,flash,silverlight,html4', url : '{:url("xxx/qiniu_upload")}',//对应后端方法 chunk_size: '400mb',//分片上传 rename : true, dragdrop: true, filters : { // Maximum file size max_file_size : '500mb', // Specify what files to browse for mime_types: [ {title : "Image files", extensions : "jpg,gif,png,mp4"}, {title : "Zip files", extensions : "zip"} ] }, // Resize images on clientside if we can resize : {width : 320, height : 240, quality : 90}, flash_swf_url : '__PUBLIC__/js/Moxie.swf',//引入js路径 silverlight_xap_url : '__PUBLIC__/js/Moxie.xap',//引入js路径 init: { FileUploaded:function(up,file,result){ layer.msg('上传成功'); $('#url').val(result.response);//后端返回的上传文件路径 } } });

5.服务器配置参数
添加nginx3个参数:请求时间
fastcgi_connect_timeout 120s;
fastcgi_send_timeout 120s;
fastcgi_read_timeout 120s;
修改php.ini 3个参数:文件大小
memory_limit = 300M
post_max_size = 300M
upload_max_filesize =300M
6.实现结果
ThinkPHP实现JavaScript上传大视频到七牛云实

ThinkPHP实现JavaScript上传大视频到七牛云实

ThinkPHP实现JavaScript上传大视频到七牛云实

相关内容

热门资讯

【今日要闻】“道游联盟到底是不... 【今日要闻】“道游联盟到底是不是挂?”(透视曝光猫腻)您好,道游联盟这个游戏其实有挂的,确实是有挂的...
玩家分享攻略“乐禧棋牌可以开挂... 有 亲,根据资深记者爆料乐禧棋牌是可以开挂的,确实有挂(咨询软件无需打开...
终于明白“新圣游牛牛是不是有挂... 网上科普关于“新圣游牛牛有没有挂”话题很是火热,小编也是针对新圣游牛牛作*弊开挂的方法以及开挂对应的...
终于明白“皇豪互娱牛牛怎么装挂... 家人们!今天小编来为大家解答皇豪互娱牛牛透视挂怎么安装这个问题咨询软件客服徽9784099的挂在哪里...
我来教教您“美猴王炸/金/花怎... 我来教教您“美猴王炸/金/花怎么开挂?”(详细开挂教程)您好,美猴王炸/金/花这个游戏其实有挂的,确...
【今日要闻】“小南四川长牌究竟... 家人们!今天小编来为大家解答小南四川长牌透视挂怎么安装这个问题咨询软件客服徽9784099的挂在哪里...
今日重大通报“猫猫学数可以开挂... 您好:猫猫学数这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9752949】很多玩家在这款游戏...
【今日要闻】“永州扯胡子可以开... 网上科普关于“永州扯胡子有没有挂”话题很是火热,小编也是针对永州扯胡子作*弊开挂的方法以及开挂对应的...
玩家攻略科普“红豆牛牛真的有挂... 有 亲,根据资深记者爆料红豆牛牛是可以开挂的,确实有挂(咨询软件无需打开...
玩家攻略科普“微信小程序家乡大... 玩家攻略科普“微信小程序家乡大贰真的有挂吗?”(太坑了果然有挂)您好,微信小程序家乡大贰这个游戏其实...