laravel5.5框架的上傳圖片功能實例分析【僅傳到服務器端】
本文實例講述了laravel5.5框架的上傳圖片功能。分享給大家供大家參考,具體如下:
這里面包含單張和多張圖片的上傳
首先先來前端頁面的html
<!DOCTYPE html> <html> <head> <title>上傳圖片</title> </head> <body> <form method="post" action="{{url('uploadImgs')}}" enctype="multipart/form-data"> {{csrf_field()}} <input type="file" name="filename[]"><br/> <input type="file" name="filename[]"><br/> <input type="file" name="filename[]"> <button type="submit">上傳圖片</button> </form> </body>
記得路徑那改成post
然后就是后臺代碼
到config/filesystem.php下增加一個
'upload' => [ 'driver' => 'local', 'root' => 'uploadImages' ],
use Illuminate\Http\Request;
// 單張圖片 public function uploadImg(Request $request){ if ($request->hasFile('filename')) { $postPics = $request->file('filename'); foreach ($postPics as $k => $v) { $extension = $v->extension(); $rule = ['jpg', 'png', 'gif', 'jpeg']; if (!in_array($extension, $rule)) { return '圖片格式需要為jpg,png,gif格式'; } $dir = date('ymd'); $fileName = time() . mt_rand(1, 999) . ".jpg"; $storeResult = $v->storeAs('filename', $dir . "/" . $fileName, 'upload');// 默認保存位置是要到filesystem.php設置,保存到storage/app/.. $outPut[] = [ 'img_url' => "images/" . $storeResult, 'uid' => $uid, 'exam_id' => $examId, 'question_id' => $questionId, ]; } DB::table('x2_upload_img')->insert($outPut); echo "寫到數(shù)據(jù)庫了,圖片上去了只是ide加載很慢"; } else { exit('未獲得到上傳文件,或上傳失敗'); }
// 多圖上傳 public function uploadImgs(Request $request){ if($request->hasFile('filename')){ $postPics = $request->file('filename'); foreach ($postPics as $k=>$v){ $extension = $v->extension(); $rule = ['jpg','png','gif','jpeg']; if(!in_array($extension,$rule)){ return '圖片格式需要為jpg,png,gif格式'; } $storeResult = $v->storeAs('filename','201810/test1.jpg','upload');// 默認保存位置是要到filesystem.php設置,保存到storage/app/.. $outPut[] = [ 'extension' => $extension, 'store_result' => $storeResult ]; } echo "<pre>"; print_r($outPut);die; } exit('未獲得到上傳文件,或上傳失敗'); }
// 上傳圖片第二種方式(form表單直接傳過來) public uploadImg(){ $image = $_FILES["photo"]["tmp_name"]; $fp = fopen($image, "r"); $file = fread($fp, $_FILES["photo"]["size"]); //二進制數(shù)據(jù)流 //保存地址 $imgDir = './Uploads/'; //要生成的圖片名字 $filename = date("Ym")."/".md5(time().mt_rand(10, 99)).".png"; //新圖片名稱 $newFilePath = $imgDir.$filename; $data = $file; $newFile = fopen($newFilePath, "w"); //打開文件準備寫入 fwrite($newFile, $data); //寫入二進制流到文件 fclose($newFile); //關(guān)閉文件 }
更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Laravel框架入門與進階教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Laravel框架的PHP程序設計有所幫助。
- Laravel+Layer實現(xiàn)圖片上傳功能(整理篇)
- PHP Laravel 上傳圖片、文件等類封裝
- laravel實現(xiàn)一個上傳圖片的接口,并建立軟鏈接,訪問圖片的方法
- laravel 實現(xiàn)上傳圖片到本地和前臺訪問示例
- laravel實現(xiàn)上傳圖片的兩種方式小結(jié)
- Laravel框架實現(xiàn)的上傳圖片到七牛功能詳解
- laravel 多圖上傳及圖片的存儲例子
- laravel實現(xiàn)上傳圖片并在頁面顯示的例子
- laravel實現(xiàn)圖片上傳預覽,及編輯時可更換圖片,并實時變化的例子
- laravel實現(xiàn)上傳圖片,并且制作縮略圖,按照日期存放的代碼
- laravel框架上傳圖片實現(xiàn)實時預覽功能
相關(guān)文章
yii2 RBAC使用DbManager實現(xiàn)后臺權(quán)限判斷的方法
這篇文章主要介紹了yii2 RBAC使用DbManager實現(xiàn)后臺權(quán)限判斷的方法,結(jié)合實例形式較為詳細的分析了Yii2權(quán)限控制的原理與相關(guān)技巧,需要的朋友可以參考下2016-07-07PHP統(tǒng)計nginx訪問日志中的搜索引擎抓取404鏈接頁面路徑
這篇文章主要介紹了PHP統(tǒng)計nginx訪問日志中的搜索引擎抓取404鏈接頁面路徑,可以對每個搜索引擎單獨統(tǒng)計,需要的朋友可以參考下2014-06-06laravel5.6實現(xiàn)數(shù)值轉(zhuǎn)換
今天小編就為大家分享一篇laravel5.6實現(xiàn)數(shù)值轉(zhuǎn)換,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10