다음 튜토리얼 칼럼인 laravel에서는 Laravel 단일 파일 및 다중 파일 업로드 구현 방법을 소개하겠습니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다!
코드는 매우 간단하고 이해하기 쉽습니다! ! ! (추가를 환영합니다~)
먼저 파일 업로드 경로를 설정하세요:
Route::post('upload/images'['as'=>'uploadImages','uses'=>'UploadController@uploadImages']); Route::post('upload/multiUpload'['as'=>'multiUpload','uses'=>'UploadController@multiUpload']);
그런 다음 나중에 파일을 저장할 때 사용할 업로드 디스크 주소를 설정하세요. config/filesystem: disks
'disks' => [ 'local' => [ 'driver' => 'local', 'root' => storage_path('app'), ], 'uploads'=>[ 'driver'=>'local', 'root'=>public_path('uploads/'), ] ],
최종적으로 UploadController는 업로드 기능을 정의합니다(이전 파일 시스템 파일에 설정된 업로드 디스크에 액세스하기 위해 저장소의 디스크 방법을 사용합니다)
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 문서를 읽어보세요. 여러분, 작업은 똑같습니다! ! !
위 내용은 laravel에서 단일 파일 및 다중 파일 업로드를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!