Cara menggunakan laravel excel maatwebsite

Pada tutoial kali ini kita akan Membuat Export Excel Laravel Menggunakan maatwebsite/excel. Fitur ini menjadi salah satu fitur  yang paling penting, banyak client yang memesan aplikasi meminta agar di pasangkan fitur ini.

Laravel Excel adalah salah satu package yang digunakan untuk membantu kita dalam membuat laporan dalam bentuk atau format excel pada framework laravel. Dengan menggunakan package ini kita bisa membuat fitur untuk export maupun import data dengan sangat mudah.

Jika anda ingin untuk memulai tutoial namum belum meiliki aplikasi laravel, anda bisa lihat tutorial ini Membuat CRUD dengan Laravel.

Langkah 1. Instalasi Package

Pada langkah ini kita perlu untuk menjalankan perintah dibawah ini untuk menginstal package maatwebsite/excel.

composer require maatwebsite/excel

Langkah 2. Konfigurasi Package

Pada bagian ini kita pelu untuk melakukan konfigurasi package yang sudah kita instal tadi.

Silahkan tambahkan kode dibawah ini pada config/app.php

'providers' => [
    /*
     * Package Service Providers...
     */
    Maatwebsite\Excel\ExcelServiceProvider::class,
]

Setelah itu silahkan scroll ke bawah sedikit dan tambahkan kode seperti dibawah ini :

'aliases' => [
    ...
    'Excel' => Maatwebsite\Excel\Facades\Excel::class,
]

Saya akan langsung membuat class export, jika Anda belum miliki model dan controller silahkan buat terlebih dahulu. Pada tutorial ini saya anggap kalian sudah pnya aplikasi.

Langkah 3. Buat Class Export

Kita akan membuat class export dengan menggunakan perintah make:export.


php artisan make:export UserExport --model=User

Anda dapat menemukan file tersebut pada direktori app/Export.


<?php

namespace App\Exports;

use App\User;
use Maatwebsite\Excel\Concerns\FromCollection;

class UserExport implements FromCollection
{
    /**
    * @return \Illuminate\Support\Collection
    */
    public function collection()
    {
        return User::all();
    }
}

Untuk menambahkan heading Anda bisa ikut seperti kode dibawah ini :

<?php

namespace App\Exports;

use App\User;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;

class UserExport implements FromCollection , WithHeadings
{
    /**
    * @return \Illuminate\Support\Collection
    */
    public function collection()
    {
        return User::all();
    }

    public function headings() : array{
        return [
            'ID',
            'Nama',
            'Email',
            'Phone',
            'Created_at',
            'Updated_at',
        ];
    }
}


Silahkan isi bagian return sesuai dengan tabel anda.

Langkah 4. Buat Fungsi Export

Silahkan tambahkan kodingan dibawah ada UserController.php atau controller yang kalian gunakan.

use App\Disneyplus;
use App\Exports\UserExport;
use Maatwebsite\Excel\Facades\Excel;

public function export() 
{
        return Excel::download(new UserExport, 'user.xlsx');
}


Langkah 5. Tambahkan Route

Ini merupakan langkah terakhir, disini kita akan menambahkan route pada direktori routes/web.php.

Route::get('user/export', 'UserController@export')->name('user.export);


Untuk membuatr link download atau export seperti dibawah ini :

<a href="{{ route('user.export')}}" title="Export To Excel">Export</a>


Oke kurang lebih seperti begitu untuk Membuat Export Excel Laravel. Jika ada yang ingin bertanya silahkan bertanya pada kolom komentar dibawah ini.

Kali ini saya akan membuat tutorial mengenai bagaimanasih cara Export ke Excel maupun PDF dari viewnya Laravel & Mysql?

Karena ada yang request maka kali ini akan saya buat Tutorialnya dan ada versi youtube juga, mari disimak sob

Pertama kalian harus sudah menyiapkan koneksi internet ya, karena kita akan install package yang diperlukan untuk project belajar export ini

Bahan :

  • Laravel-Excel 3.1
  • Laravel Dom-PDF by barryvdh

Yang harus diperhatikan :

  • Disini tidak diajarkan cara install laravel (sudah diajarkan di : Install Laravel )
  • Tidak diajarkan cara buat controller, model (sudah diajarkan di : Belajar Laravel )
  • Yang diajarkan disini khusus untuk Export ke Excel atau PDF saja biar kita bisa fokus ya
  • Buat yang masih ga paham, bisa lihat diyoutube atau tanya dikomentar
  • Ingat, kalau merasa kurang jelas tonton video gilacoding berikut : https://www.youtube.com/watch?v=OMknJY2pKBs

Oke lanjut, Kalau saya udah bikin project dengan nama belajar-export. Disini akan saya bagi 2 sesi jadi pertama sesi untuk Excel dulu setelah itu baru tutorial PDF

Baik, dimulai dari belajar Export Excel sebelum kita jalankan php artisan serve, kita install dulu package untuk Excel dengan cara sebagai berikut :

  • Buka dulu folder project kalian, buka cmd didalam project (sama seperti kalian menjalankan php artisan serve) ketik command dibawah ini
composer require maatwebsite/excel
  • Tunggu saja sampai selesai (kecepatan tergantung koneksi internet)
  • Buka file config\app.php , pada bagian providers paste ini dibagian bawah
Maatwebsite\Excel\ExcelServiceProvider::class,

  • Masih di config\app.php, sekarang pada bagian aliases
'Excel' => Maatwebsite\Excel\Facades\Excel::class,

  • Kita publish config dari maatwebsite-excel dengan cara menjalankan command ini
php artisan vendor:publish --provider="Maatwebsite\Excel\ExcelServiceProvider"

Untuk instalasi package excel sudah selesai, lanjut gimana cara mengexport dari data yang ada ditable Mysql kita :