老莫的笔记本  
  
查看: 950|回复: 0

正常情况下使用七牛云存储

[复制链接]

662

主题

878

帖子

5133

积分

超级版主

Rank: 8Rank: 8

积分
5133
发表于 2019-3-10 16:19:33 | 显示全部楼层 |阅读模式
  1. use Qiniu\Storage\UploadManager;    // 七牛上传
  2. use Qiniu\Auth;
复制代码
  1. /*
  2.         @name 七牛云上传接口
  3.         @param file 文件
  4.         @return  文件地址【绝对地址】
  5.     */
  6.     public function upQiniouOne()
  7.     {
  8.         $file = $_FILES['file'];
  9.         if (empty($file)) {
  10.             throw new Exception('没有文件被上传', 10002);
  11.         }  
  12.         // 生成文件名
  13.         $str = explode('.',$file['name']);
  14.         $ext = $str[count($str)-1]; // 获取后缀名
  15.         $filetype = ['jpg', 'jpeg', 'gif', 'bmp', 'png'];
  16.         if (!in_array( $ext, $filetype))
  17.         {
  18.             dowjson(1,"请上传图片类型的文件");
  19.         }
  20.         $user = $this->useinfo;
  21.         
  22.         // 上传到七牛后保存的文件名  
  23.         $key = $user->userid . date('YmdHis') . rand(0, 9999) . '.' . $ext;

  24.         // 获得7牛云配置信息
  25.         $accessKey = Config::get('qiniu.accessKey');
  26.         $secretKey = Config::get('qiniu.secretKey');
  27.         $bucket = Config::get('qiniu.bucket');

  28.         $upManager = new UploadManager();
  29.         $auth = new Auth($accessKey, $secretKey);
  30.         $token = $auth->uploadToken($bucket);

  31.         // 上传token,文件名,文件
  32.         list($ret, $error) = $upManager->putFile($token, $key, $file['tmp_name']);
  33.         if ($error !== null) {
  34.             downjson(1,"上传出错");
  35.             throw new Exception('上传出错'.serialize($error));
  36.         }
  37.         $ret['key'] = 'http://'.Config::get("qiniu.DOMAIN").'/'.$ret['key'];
  38.       
  39.         downjson(0,"返回成功",1,$ret);
  40.     }
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表