找到 config/filesystems.php 文件而后修改 root、具体以下:php
'local' => [ 'driver' => 'local', // 'root' => storage_path('app'), 'root' => public_path() ], 'public' => [ 'driver' => 'local', // 'root' => storage_path('app/public'), 'root' => public_path(), 'url' => env('APP_URL').'/storage', 'visibility' => 'public', ],
// 上传页面 Route::get('/upl', function(){ return view('Users.upload'); });
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>上传</title> </head> <body> <form action="uplDo" method="post" enctype="multipart/form-data"> <!-- 文件上传使用 post 提交方式、须要加 csrf 保护--> @csrf 文件上传: <input type="file" name="file" id=""> <input type="submit" value="提交"> </form> </body> </html>
// 执行上传 Route::post('/uplDo', 'UsersController@uplDo');
/** * 文件上传 */ public function uplDo( Request $request ) { // 获取上传的文件 $file = $request->file('file'); // 得到上传文件的原始名称 getClientOriginalName // 040106.jpg echo $file->getClientOriginalName(); // 获取上传文件的文件扩展名 extension // jpg echo $extension = $file->extension(); // 获取上传文件的大小 // 29514 echo $file->getSize(); // 检测上传的文件是否合法,返回值为true或false // 1 echo $file->isValid(); // 获取上传后保存的路径 // php/NKtwzdR5l1zkeqKzc8YK36HpaB6TSdkRvBoyjlhq.jpeg echo $file->store('php'); // 最终的保存路径是在 ../Laravel7/public/php/NKtwzdR5l1zkeqKzc8YK36HpaB6TSdkRvBoyjlhq.jpeg }