use Qiniu\Auth;
use Qiniu\Storage\UploadManager;
/**
* [qn_upload 七牛上传]
* @author 984270382@qq.com
* @copyright passboat
* @param [type] $file [description]
* @return [type] [description]
*/
function qn_upload($file){
$qiniu = 'http://*********/';
$path = date('Ymd/');
$url = 'public/uploads/'.$path;
if(!file_exists($url)){
mkdir ($url,0777,true);
}
$name = time().$file['name'];
$statu = strtolower(substr($name,strrpos($name,'.')+1));
$allow_type = array('jpg','jpeg','gif','png');
if(!in_array($statu, $allow_type)){
return ['code'=>-1,'msg'=>'图片格式错误'];
}
if($file['size']/1024/1024 > 10){
return ['code'=>-1,'msg'=>'图片大小超过10M!'];
}else{
// 先存储到 本地服务器
move_uploaded_file($file['tmp_name'],$url.'/'.$name);
$accessKey = 'u0P7qA1I83CKtl***********XrwpeLoLm4-oF';
$secretKey = 'ztRc**************MBZ47wIjwAsbeve2kNH';
$bucket = 'h****g';
$auth = new Auth($accessKey, $secretKey);
$token = $auth->uploadToken($bucket);
$filePath = $url.'/'.$name;
$uploadMgr = new UploadManager();
// 从本地服务器 上传到 七牛
list($ret, $err) = $uploadMgr->putFile($token, $filePath, $filePath);
if ($err === null) {
return ['code'=>-1];
}
// 将数据保存到数据库
// ...........
return ['code'=>1,'url' => $qiniu.$url.$name];
}
}composer require qiniu/php-sdk //composer 自己下载 ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。