前言:
七牛云
是国内领先的企业级公有云服务商,致力于打造以数据为核心的场景化PaaS
服务。围绕富媒体场景,七牛
前后推出了对象存储,融合CDN
加速,数据通用处理,内容反垃圾服务,以及直播云服务等。javascript
1、安装
- 经过
composer
,这是推荐的方式,能够使用composer.json
声明依赖,或者运行下面的命令。SDK
包已经放到这里qiniu/php-sdk
。
composer require qiniu/php-sdk
2、使用方式
案例php
// 引入 use Qiniu\Auth; use Qiniu\Storage\UploadManager; /** * 一个表单提交,其中有图片上传的云存储例子. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { // $data = \Input::all(); $file = $request->file('pic') ; if(!$file){ return back() ; } if(!$file->isValid()){ return back() ; } // 须要填写你的 Access Key 和 Secret Key $accessKey = env('QINIU_ACCESSKEY'); $secretKey = env('QINIU_SECRETKEY'); // 构建鉴权对象 $auth = new Auth($accessKey, $secretKey); // 要上传的空间 $bucket = env('QINIU_BUCKET'); // 生成上传 Token $token = $auth->uploadToken($bucket); // 要上传文件的本地路径 $filePath = $file->getRealPath(); // 上传到七牛后保存的文件名 $date = time(); $key = 'demo/'.$date.'.'.$file->getClientOriginalExtension(); // 初始化 UploadManager 对象并进行文件的上传。 $uploadMgr = new UploadManager(); // 调用 UploadManager 的 putFile 方法进行文件的上传。 list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath); if ($err !== null) { return response()->json(['ResultData'=>'失败','info'=>'失败']); } else { $info = ['name'=>$data['name'], 'level'=>$data['level'], 'pic'=>$ret['key'], 'addtime'=>$date, 'status'=>'1']; $ids = \DB::table('data_demo')->insertGetid($info); if($ids){ return redirect('/demo'); }else{ dd('添加失败'); } } }
以上只是一个简单的控制器完成整个流程的案例。另外我的认为
[原文地址](http://www.blog8090.com/)PHP
服务器上传尽可能少用,毕竟消耗的是服务器性能。我暂时使用的是javascript接口,使用服务器端上传。java