前言:
七牛雲
是國內領先的企業級公有云服務商,致力於打造以數據爲核心的場景化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