ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

thinkphp 增加七牛上传功能

2019-09-24 12:06:17  阅读:346  来源: 互联网

标签:code qiniu system 七牛 cofing thinkphp 上传


首先需要下载七牛的php版本sdk:https://developer.qiniu.com/sdk#official-sdk

将文件重新命名:Qiniu,然后移动到extend目录下,然后就可以直接使用。

<?
/**
 * 七牛文件上传处理
 */
require_once '../extend/Qiniu/autoload.php';  //引入七牛文件
use think\Db;
use Qiniu\Auth;// 引入七牛鉴权类
use Qiniu\Storage\UploadManager;// 引入七牛上传类
use Qiniu\Processing\PersistentFop;//缩略图持久化
class QiniuUpload extends Common{
	/**
	 * [upload_files 七牛文件上传处理]
	 * @param  [type] $files [上传的文件]
	 * @return [type]        [description]
	 */
	public function upload_files($files){
		//1.验证文件--省略
		//获取七牛配置参数
        $file_path = $files->getRealPath();// 获取文件对象的本地路径
        if(empty($file_path)){
            return ['code'=>-200,'msg'=>'请传入文件本地路径'];
        }
		$system_cofing = system_cofing();            //获取系统配置--气的七牛配置缓存在了系统参数中
        // 需要填写你的 Access Key 和 Secret Key
        $accessKey = $system_cofing['qiniu_accessKey'];//"8G-G8oyFme8ltP5p_zc6XaOrzcMST9hc5YCINlsR";   登录七牛可以查看
        $secretKey = $system_cofing['qiniu_secretKey'];//"Iz5YDPIgNWVQxO6GMAF7jWUeUf5UXyUh6HlTb7oa";   登录七牛可以查看
        $bucket = $system_cofing['qiniu_bucket'];      //"img";   登录七牛可以查看--储存空间命名
        $folder = $system_cofing['qiniu_folder'];      //qiniu目录标识
        $domain = $system_cofing['qiniu_url'];         //qiniu访问域名
        // 构建鉴权对象
        $auth = new Auth($accessKey, $secretKey);
        // 生成上传 Token
        $token = $auth->uploadToken($bucket);
        // 获取文件后缀
        $ext = strtolower(pathinfo($files->getInfo('name'), PATHINFO_EXTENSION));  //后缀
        // 上传到七牛后保存的文件名
        $key = $folder.'/'.date('Ymd').'/'.md5(microtime(true)).'.'.$ext;
        // 初始化 UploadManager 对象并进行文件的上传。
        $uploadMgr = new UploadManager(); 
        // 调用 UploadManager 的 putFile 方法进行文件的上传。
        list($ret, $err) = $uploadMgr->putFile($token, $key, $file_path);
        if ($err !== null) {
            return ['code'=>-200,'msg'=>$err->message(),'statusCode'=>$err->code];
        } else {
            return [
                'code'=>200,
                'msg'=>'上传成功',
                'value'=>$key,            //返回保存图片的路径
                'url'=>$domain.'/'.$key,  //返回保存图片的全路径
            ];
        }
	}
}

以上是直接简单使用的代码

标签:code,qiniu,system,七牛,cofing,thinkphp,上传
来源: https://blog.csdn.net/qq_41451303/article/details/101219101

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有