laravel單文件、多文件上傳的實現方法

下面由laravel教程欄目給大家介紹關于laravel單文件、多文件上傳的實現方法,希望對需要的朋友有所幫助!?

laravel單文件、多文件上傳的實現方法

代碼超簡潔也超好理解呀!!!? ? (歡迎補充~)

?先設置上傳文件的路由:

Route::post('upload/images'['as'=>'uploadImages','uses'=>'UploadController@uploadImages']);?? ?Route::post('upload/multiUpload'['as'=>'multiUpload','uses'=>'UploadController@multiUpload']);

再設置uploads磁盤地址,之后儲存文件會使用到。config / filesystem : disks

?'disks'?=>?[ ? ????????'local'?=>?[ ????????????'driver'?=>?'local', ????????????'root'?=>?storage_path('app'), ????????], ? ????????'uploads'=>[ ????????????'driver'=>'local', ????????????'root'=>public_path('uploads/'), ????????] ????],

最后UploadController定義上傳函數(使用Storage的disk方法來訪問uploads磁盤,就是前面filesystem文件里設置的)

putFile方法:管理文件到指定的存儲位置,例為自動生成文件名,也可以手動設置 (‘20190705′, $file,’test.png’)

?//上傳單張圖 ?public?function?uploadImages(Request?$request) ????{ ????????if?($request->isMethod('post'))?{ ????????????$file?=?$request->file('file'); ????????????if($file->isValid()){ ????????????????$path?=?Storage::disk('uploads')->putFile(date('Ymd')?,?$file); ????????????????if($path)?{ ????????????????????return?['code'?=>?0?,?'msg'?=>?'上傳成功'?,?'data'?=>?$path]; ????????????????} ????????????????else?{ ????????????????????return?['code'?=>?400?,?'msg'?=>?'上傳失敗']; ????????????????} ????????????} ????????}?else?{ ????????????return?['code'?=>?400,?'msg'?=>?'非法請求']; ????????} ????} //上傳多張圖 ?public?function?multiUpload(Request?$request) ????{ ????????if($request->method('post')){ ????????????$files?=?$request->allFiles(); ????????????if(is_array($files)){ ????????????????foreach($files?as?$file){ ????????????????????$path?=?Storage::disk('uploads')->putFile(date('Ymd')?,?$file); ????????????????} ????????????????if(?$path?)?{ ????????????????????return?['code'?=>?0?,?'msg'?=>?'上傳成功'?,?'data'?=>?$path]; ????????????????} ????????????????else?{ ????????????????????return?['code'?=>?400?,?'msg'?=>?'上傳失敗']; ????????????????} ????????????} ????????}else{ ????????????return?['code'?=>?400,?'msg'?=>?'非法請求']; ????????} ????}

?最最最最后:模板的上傳操作……自行看layui文檔吧,一毛一樣的操作!!!? ??

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享