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