BLANTERORIONv101

Membuat Export Excel Laravel

14 Juli 2022
Membuat Export Excel Laravel

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.

1 komentar

  1. Lapak Laris
    Lapak Laris 22 Agustus 2022 11.42

    halo kak
    panduan yang sangat bermanfaat.
    izin min, bikin tutorial cara menambahkan fitur import sesaui table dan kolom di DB bagaimana sebagai alternatif daripada create manual satu per satu. thanks

    Reply