在项目根目录下php composer.phar require qiniu/php-sdk,或者composer require qiniu/php-sdk等待便可完成。
在vendor 下能够看到qiniu目录php
能够在config.php 或则 extra 扩展参数下添加一个qiniu.php 均可以,必须配置可以使用
<?php return [ 'AccessKey' => 'CfUQ83YrrTeIEWgXC7vWxQArM*******YaiKOT0', // ak 'SecretKey' => 'Bmi9FO6U4HUDL25c68YhhxxF******TAGLzHFJa', // sk 'BUCKET' => '***', // 这个是你的存储空间的地址!!!! 'domin' => 'ooa58iqmb.bkt.clouddn.com', // 这个是你的图片镜像地址 ];
能够在common下面建立一个公共类 lib/
<?php
namespace app\common\lib;app
// 引入鉴权类 use Qiniu\Auth; // 引入上传类 use Qiniu\Storage\UploadManager; /** * 返回一个加密数据 * $file 传入的图片本地地址 * return $key 上传成功的图爿代码 * 若是中间数显了noobject 则问题应该是你的ak或则sk或者储存空间地址写错了 */ Class Upload { public static function image($file=''){ if( !$file ){ return ''; } $file = '../public/static/ueditor/php/upload/20180515/15263909228063.jpg'; //这里我代用了一个图片地址 $str = explode('.',$file); $ext = $str[count($str)-1]; // 获取后缀名 $config = config('qiniu'); // 构建一个鉴权对象 $auth = new Auth($config['AccessKey'],$config['SecretKey']); // 生成上传的token $token = $auth->uploadToken($config['BUCKET']); // 上传到七牛后保存的文件名 $key = date('Y').'/'.date('m').'/'.substr(md5($file),0,5).date('YmdHis').mt_rand(0,9999).'.'.$ext; // 初始化UploadManager类 $uploadMgr = new UploadManager(); list($ret,$err) = $uploadMgr->putFile($token,$key,$file); if($err !== null){ return ''; }else{ // return $key; return $key; } }
}composer