Cara Export Excel di Laravel

Laravel, sebagai framework PHP yang populer, menyediakan berbagai fitur yang memudahkan pengembangan aplikasi web. Salah satu tugas umum yang sering dihadapi pengembang adalah mengekspor data ke dalam format Excel. Dalam artikel ini, kita akan menjelaskan langkah-langkah cara eksport data ke dalam file Excel menggunakan Laravel.

1. Persiapan Awal

Sebelum memulai proses eksport Excel, pastikan Anda telah menginstal Laravel di sistem Anda dan mengonfigurasi proyek Laravel yang baru atau yang sudah ada.

2. Instal Library Laravel Excel

composer require maatwebsite/excel

Setelah menginstal, tambahkan service provider dan facade pada file config/app.php:

'providers' => [
    // ...
    Maatwebsite\Excel\ExcelServiceProvider::class,
],

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

3. Membuat Controller

Buat controller baru atau gunakan controller yang sudah ada untuk menangani logika ekspor Excel. Contoh:

php artisan make:controller ExcelController

4. Menulis Logika Ekspor di Controller

Buka file controller yang telah dibuat (ExcelController.php) dan tambahkan metode untuk menangani ekspor Excel. Berikut adalah contoh sederhana:

use Maatwebsite\Excel\Facades\Excel;
use App\Exports\DataExport;

class ExcelController extends Controller
{
    public function export()
    {
        return Excel::download(new DataExport, 'data.xlsx');
    }
}

5. Membuat Export Class

Buat class export baru yang akan menangani format dan data yang akan diekspor. Gunakan perintah Artisan untuk membuat class export:

php artisan make:export DataExport

Buka file export yang dibuat (DataExport.php) dan konfigurasikan class tersebut sesuai kebutuhan. Berikut contoh sederhana:

use Maatwebsite\Excel\Concerns\FromCollection;
use App\Models\Data;

class DataExport implements FromCollection
{
    public function collection()
    {
        return Data::all();
    }
}

6. Menambahkan Route

Tambahkan route untuk memanggil metode eksport di dalam file routes/web.php:

Route::get('/export', 'ExcelController@export');

7. Uji Coba

Jalankan server pengembangan Laravel:

php artisan serve --port=8019

Akses URL http://localhost:8019/export pada browser Anda, dan file Excel (data.xlsx) akan diunduh.

Kesimpulan

Dengan menggunakan library Laravel Excel, mengekspor data ke dalam format Excel menjadi tugas yang lebih mudah. Pastikan untuk menyesuaikan logika ekspor dan konfigurasi sesuai dengan kebutuhan aplikasi Anda. Dengan langkah-langkah di atas, Anda dapat dengan mudah mengekspor data dalam proyek Laravel Anda ke dalam file Excel.