Response download with file in Laravel 5.3 example

By Hardik Savani | September 21, 2016 | Category : Laravel

We sometimes require to return response with download file from controller method like generate invoice and give to download or etc. Laravel 5 provide us response() with download method that way we can do it.

In First argument of download() we have to give path of download file. We can rename of download file by passing second argument of download(). We can also set headers of file by passing third argument.

In bellow example will help you how it is works.

So, first i am going to create new route for our example as like bellow:


Route::get('donwload-file', '[email protected]');

Ok, now i have to add one method "downloadFile()" in my HomeController. If you don't have HomeController then you can use your own controller as like bellow:


namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class HomeController extends Controller


public function downloadFile()


$myFile = public_path("dummy_pdf.pdf");

$headers = ['Content-Type: application/pdf'];

$newName = 'itsolutionstuff-pdf-file-'.time().'.pdf';

return response()->download($myFile, $newName, $headers);



So, maybe it can help you....

Hardik Savani
My name is Hardik Savani. I'm a full-stack developer, entrepreneur and owner of Aatman Infotech. I live in India and I love to write tutorials and tips that can help to other artisan. I am a big fan of PHP, Javascript, JQuery, Laravel, Codeigniter, VueJS, AngularJS and Bootstrap from the early stage.
Follow Me: Github Twitter
***Do you want me hire for your Project Work? Then Contact US.

We are Recommending you: