图集1/1

正文 1685字数 393,973阅读


composer安装七牛云官方sdk包
composer require qiniu/php-sdk
Run code
Cut to clipboard


    安装成功后我们就能在项目根目录看到七牛云的包,在vendor下可以看到七牛云的包,官方还为我们写好了案例,大家可以参考里面的写法


    修改.env文件,QINIU_ACCESS_KEY和QINIU_SECRET_KEY
    APP_DEBUG = true [APP] DEFAULT_TIMEZONE = Asia/Shanghai [DATABASE] TYPE = mysql HOSTNAME = 127.0.0.1 DATABASE = blog USERNAME = root PASSWORD = root HOSTPORT = 3306 CHARSET = utf8 DEBUG = true [LANG] default_lang = zh-cn [QINIU] QINIU_ACCESS_KEY = xxxxxx改为你的 QINIU_SECRET_KEY = xxxxxx改为你的 QINIU_BUCKET = xxxxxx改为你的 QINIU_DOMAIN = xxxxxx改为你的
    Run code
    Cut to clipboard


      在app\common下新建一个公共七牛云文件上传类
      <?php namespace app\common; use Qiniu\Auth; use Qiniu\Storage\UploadManager; use think\facade\Env; class Qiniu { public static function upload($filePath,$filename){ $filename=str_replace('\\','/',$filename);//替换\斜杠 // 需要填写你的 Access Key 和 Secret Key $accessKey=Env::get('qiniu.qiniu_access_key'); $secretKey=Env::get('qiniu.qiniu_secret_key'); $bucket=Env::get('qiniu.qiniu_bucket'); $domain=Env::get('qiniu.qiniu_domain'); // 构建鉴权对象 $auth = new Auth($accessKey, $secretKey); // 生成上传 Token $token = $auth->uploadToken($bucket); // 初始化 UploadManager 对象并进行文件的上传。 $uploadMgr = new UploadManager(); // 调用 UploadManager 的 putFile 方法进行文件的上传。 $res = $uploadMgr->putFile($token, $filename, $filePath); if($res[1]==null){ //上传成功 return $domain.$filename; }else{//上传失败 return ''; } } }
      Run code
      Cut to clipboard


        使用
        $url=Qiniu::upload($filePath,$filename);
        Run code
        Cut to clipboard
          传入文件的相对路径或绝对路径加上文件名