📜  Laravel-文件上传

📅  最后修改于: 2020-10-23 08:06:08             🧑  作者: Mango


在Laravel中上传文件非常容易。我们需要做的就是创建一个视图文件,用户可以在其中选择要上传的文件,还可以创建一个控制器来处理上传的文件。

在视图文件中,我们需要通过添加以下代码行来生成文件输入。

Form::file('file_name');

在Form :: open()中,我们需要添加‘files’=>’true’ ,如下所示。这有助于将表单分多个部分上传。

Form::open(array('url' => '/uploadfile','files'=>'true'));

步骤1-创建一个名为resources / views / uploadfile.php的视图文件,并将以下代码复制到该文件中。

资源/视图/uploadfile.php

 '/uploadfile','files'=>'true'));
         echo 'Select the file to upload.';
         echo Form::file('image');
         echo Form::submit('Upload File');
         echo Form::close();
      ?>
   

步骤2-通过执行以下命令创建一个名为UploadFileController的控制器。

php artisan make:controller UploadFileController --plain

步骤3-成功执行后,您将收到以下输出-

UploadFileController

步骤4-复制以下代码到

app / Http / Controllers / UploadFileController.php文件。

app / Http / Controllers / UploadFileController.php

file('image');
   
      //Display File Name
      echo 'File Name: '.$file->getClientOriginalName();
      echo '
'; //Display File Extension echo 'File Extension: '.$file->getClientOriginalExtension(); echo '
'; //Display File Real Path echo 'File Real Path: '.$file->getRealPath(); echo '
'; //Display File Size echo 'File Size: '.$file->getSize(); echo '
'; //Display File Mime Type echo 'File Mime Type: '.$file->getMimeType(); //Move Uploaded File $destinationPath = 'uploads'; $file->move($destinationPath,$file->getClientOriginalName()); } }

第5步-在app / Http / routes.php中添加以下行。

app / Http / routes.php

Route::get('/uploadfile','UploadFileController@index');
Route::post('/uploadfile','UploadFileController@showUploadFile');

步骤6-访问以下URL以测试上传文件的功能。

http://localhost:8000/uploadfile

步骤7-您将收到如下图所示的提示。

浏览文件