tp5.0整合七牛云图片上传

Posted kenshinobiy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tp5.0整合七牛云图片上传相关的知识,希望对你有一定的参考价值。

转:https://www.cnblogs.com/adobe-lin/p/7699638.html

这里以上传图片为例 上传其他文件也是大同小异

使用composer安装gmars/tp5-qiniu

安装成功则在vendor目录下多出一个目录 这个目录含有整合七牛云的所有类包等文件

技术分享图片

控制器中添加upload方法

技术分享图片
    public function upload() {
        if(request()->isPost()) {
            $qiniu = new gmarsqiniuQiniu(‘你的ak‘,‘你的sk‘,‘文件夹目录名称‘);
            $result = $qiniu->upload();
            if($result === false) {
                return json([‘status‘=>‘-1‘,‘msg‘=>"上传失败"]);
            } else {
                return json([‘status‘=>‘0‘,‘msg‘=>"上传成功"]);
            }
        } else {
            return $this->fetch();
        }
    }        
技术分享图片

修改以下文件

技术分享图片

修改79行开始的几处代码

技术分享图片
    public function upload($saveName = ‘‘, $bucket = ‘‘)
    {
        $token = $this->_getUploadToken($bucket);

        $files = $_FILES;
        if (empty($files)) {
            throw new Exception(‘没有文件被上传‘, 10002);
        }
        $values = array_values($files);

        $uploadManager = new UploadManager();
        if (empty($saveName)) {
            // 定义文件存储名称 以上传时的时间戳为文件名
            $saveName = time().strrchr($values[0][‘name‘],‘.‘);
        }
        $infoArr = explode(‘.‘, $values[0][‘name‘]);
        $extension = array_pop($infoArr);
        $fileInfo = $saveName . ‘.‘ . $extension;
        list($ret, $err) = $uploadManager->putFile($token, $saveName, $values[0][‘tmp_name‘]);
        if ($err !== null) {
            // 上传失败
            return false;
        }
        // 上传成功返回文件名
        return $ret[‘key‘];
    }

以上是关于tp5.0整合七牛云图片上传的主要内容,如果未能解决你的问题,请参考以下文章

如何上传图片到七牛云

ueditor采用Spring MVC的方式整合七牛云实现上传图片视频附件等

如何自动上传文件到七牛云

ThinkPHP6上传图片七牛云 如何上传文件到七牛云对象储存cos

php表单上传图片到七牛云存储并返回地址……求具体流程~有代码更好

如何将图片上传到七牛云平台?