tp框架文件上传七牛服务器,TP上传图片到七牛服务器

**TP上传图片到七牛**

>[success]1. 配置文件

~~~

/* 七牛驱动相关 */

'QN_DRIVER_CONFIG' => array(

'accessKey' => '5Iprq5JAE6xWMYHZIBqSo9tW', //这里填七牛AK

'secretKey' => 'fdpk-KOxD6bpjNFE4pFf7I9', //这里填七牛SK

'domain' => 'ceshi.1gre.cn',//这里是查看七牛图片时的图片链接地址的域名

'bucket' => 'tiandaoedu-app'//这里是七牛中的空间

),

/* 七牛相关 */

'QN_CDN_URL' => 'https://ceshi.1gre.cn/',//七牛cdn加速域名

//头像前缀

'AVATAR_PREFIX' => 'User/Avatar',

//头像名

'AVATAR_FILE_NAME' => 'User_Avatar_{$user_id}.jpg',

~~~

>[success] 2. 接口控制器方法

~~~

/**

* 上传用户头像

*/

public function upload_pic() {

$uid = I('post.uid',0,'int'); //用户id

$uid = $uid ? $uid :$this->uid;

if (!$uid) {

json_error('20106',array('msg'=>C('ERR_CODE.20106')));

}

//图片相关的配置

$qn_info = array(

'maxSize' => 2*1024*1024,//文件大小

'rootPath' => './', //保存的根路径

'savePath' => '', //保存路径

'saveName' => "{$uid}",

'exts' => array('jpg', 'gif', 'png', 'jpeg'), // 允许上传的后缀

'autoSub' => true,

'replace' => true, //存在同名是否覆盖

'subName' => C("AVATAR_PREFIX"),

'saveExt' => 'jpg',

'driver' => 'Qiniu',

'driverConfig' => C('QN_DRIVER_CONFIG'),

);

$upload = new \Think\Upload($qn_info);

$info = $upload->upload($_FILES);

if(!$info) {

$file_name = str_replace('{$user_id}',$uid, C('AVATAR_FILE_NAME'));

$qn = new QiniuStorage(C("QN_DRIVER_CONFIG"));

$qn->del($file_name);//删除已存在文件

$info = $upload->upload($_FILES);

}

if($info){

$msg['pic_url']= str_replace("http","https",$info['file']['url'].'?v='.time());

json_success($msg);

}

json_error('20110', array('msg'=>C('ERR_CODE.20110')));

}

~~~