CodeIgniter Laravel PHP Example HTML Javascript jQuery MORE Videos New
Need a Website Or Web Application Contact : +91 9437911966 (Whatsapp) Note: Paid Service

Export data as excel file In laravel framework

In this example we will discuss about import excel file In laravel framework PHP.

Follow the below step to import :

  1. Download the dependecy using composer for Import and export excel file.
  2. composer require maatwebsite/excel

    You may visit for more details.

  3. Add providers and aliases in config/app.php
  4. 'providers' => [
             * Laravel Framework Service Providers...
    'aliases' => [
        'Excel' => Maatwebsite\Excel\Facades\Excel::class,
  5. Now publish the changes using vendor:publish.

  6. php artisan vendor:publish

  7. Make migration and migrate it using command.
  8. Add routes
  9. /*Excel import export*/
    Route::get('export', 'ImportExportController@export')->name('export');
    Route::get('importExportView', 'ImportExportController@importExportView');
    Route::post('import', 'ImportExportController@import')->name('import');
  10. Create Import and Export class using import/export command
  11. Note: This command avaialble only if you download dependecy successfully using composer(step 1)

    php artisan make:export BulkExport --model=Bulk

  12. In app/Emports/BulkExport.php file
  13. namespace App\Exports;
    use App\Bulk;
    use Maatwebsite\Excel\Concerns\FromQuery;
    use Maatwebsite\Excel\Concerns\WithHeadings;
    class BulkExport implements FromQuery,WithHeadings
        * @return \Illuminate\Support\Collection
        // use Exportable;
        public function headings(): array
            return [
        public function query()
            return Bulk::query();
            /*you can use condition in query to get required result
             return Bulk::query()->whereRaw('id > 5');*/
        public function map($bulk): array
            return [
  14. In Bulk.php Model
  15. <?php
    namespace App;
    use Illuminate\Database\Eloquent\Model;
    class Bulk extends Model
        protected $table = 'bulk';
        protected $fillable = [
            'name', 'email',
  16. create ImportExportController
  17. php artisan make:controller ImportExportController

    namespace App\Http\Controllers;
    use Illuminate\Http\Request;
    use App\Exports\BulkExport;
    use App\Imports\BulkImport;
    use Maatwebsite\Excel\Facades\Excel;
    class ImportExportController extends Controller
        public function importExportView()
           return view('importexport');
        public function export() 
            return Excel::download(new BulkExport, 'bulkData.xlsx');
  18. Create view file importexport.blade.php
  19. <!DOCTYPE html>
        <title>Import Export Example</title>
        <link rel="stylesheet" href="" />
    	<div class="container">
        <div class="card bg-light mt-3">
            <div class="card-header">
                Import Export Example
            <div class="card-body">
                <form action="{{ route('import') }}" method="POST" enctype="multipart/form-data">
                    {{ csrf_field() }}
                    <input type="file" name="file" class="form-control">
                    <button class="btn btn-success">Import Bulk Data</button>
                    <a class="btn btn-warning" href="{{ route('export') }}">Export Bulk Data</a>