Laravel - File Upload

Laravel - File Upload

Uploading files in Laravel is very easy. All we need to do is create a view file where the user can select a file to upload, and a controller where the uploaded files will be processed.

In the view file, we need to create an input file by adding the following line of code.


In Form::open() we need to add 'files' => 'true' as shown below. This makes it easier to load a multi-part form.

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


Step 1 − Create a view file called resources/views/uploadfile.php and copy the following code into this file.


<html> <body> <? php
         echo Form :: open ( array ( 'url' => '/uploadfile' , 'files' => 'true' )); 
         echo 'Select the file to upload.' ; 
         echo Form :: file ( 'image' ); 
         echo Form :: submit ( 'Upload File' ); 
         echo Form :: close (); ?> </body> </html>  

Step 2 − Create a controller named UploadFileController by running the following command.

php artisan make:controller UploadFileController --plain

Step 3 − Upon successful execution, you will get the following output −

Step 4 - Copy the following code into

The file is app/Http/Controllers/UploadFileController.php .



namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class UploadFileController extends Controller {
   public function index() {
   public function showUploadFile(Request $request) {
      $file = $request->file('image');
      //Display File Name
      echo 'File Name: '.$file->getClientOriginalName();
      echo '<br>';
      //Display File Extension
      echo 'File Extension: '.$file->getClientOriginalExtension();
      echo '<br>';
      //Display File Real Path
      echo 'File Real Path: '.$file->getRealPath();
      echo '<br>';
//Display File Size
      echo 'File Size: '.$file->getSize();
      echo '<br>';
      //Display File Mime Type
      echo 'File Mime Type: '.$file->getMimeType();
      //Move Uploaded File
      $destinationPath = 'uploads';

Step 5 - Add the following lines to app/Http/rout.php .



Step 6 − Visit the following URL to check if the downloaded file is working.


Step 7 − You will receive an invitation as shown in the following image.