Hello laravel PHP lover’s, this tutorial,is containts article how to use library PhpSpreadsheet in Laravel. This tutorial will give you a simple guide and easy way how to setup PhpSpreadsheet in Laravel project, and use it to build file report excel in Laravel.
PhpSpreadsheet is a library written in pure PHP and offers a set of classes that allow you to read and write various spreadsheet file formats such as Excel and LibreOffice Calc. Here you will learn step by step how to setup PhpSpreadsheet in your Laravel project.
So if you are looking for example of Laravel PhpSpreadsheet, this simple article will give you simple example of how to use PhpSpreadsheet in Laravel project of you. So let’s scroll below to explore step by step build Laravel Report Excel with PhpSpreadsheet.
Step 1 Install Laravel Project
Step 2 Setup Database Connection
Step 3 Create Model, Database Migration, and Factory Faker Employee
Step 4 Running Database Migration using Artisan
Step 5 Add Dummy Record Data into tabel
Step 6 Add Route
Step 7 Install PhpSpreadsheet
Step 8 Create Laravel Blade File
Setep 9 Modify Controller EmployeeController
Step 10 Run Laravel Development Server
Halo teman-teman, untuk membuat laporan excel pada project Laravel menggunakan PhpSpreadsheet langkah-langkahnya adalah seperti berikut :
Step 1. Install Laravel Project
Untuk membuat report excel pada laravel dengan PhpSpreadsheet. Pertama-tama yang harus kita lakukan adalah membuat pproject laravel pada local komputer kita masing-masing. Untuk melakukan ini semua silahkan buka jendela Terminal/ Command Prompt komputer Anda kemudian jalankan perintah composer dibawah untuk menginstall project Laravel PhpSpreadsheet report excel project:
composer create-project –prefer-dist laravel/laravel your_project_name_here “7.*”
Perhatikan perintah composer diatas, dalam membuat project Laravel Report Excel with PhpSpreadsheet disini saya menggunakan Laravel versi 7.
Step 2 Setup Database Connection
Setelah sukses menginstall fresh apllication Laravel pada project Anda, maka langkah selanjutnya melakukan setup database configuration atau melakukan konfig database pada project Laravel. Pada tutorial kali ini saya menggunakan environment file “.env” dalam melakukan konfig database. File environment bisa kita jumpai pada root project Laravel. Silahkan buka project laravel Anda dan temukan file “.env”, buka file tersebut dan lakukan konfigurasi database seperti berikut :
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3307
DB_DATABASE=laravelexcel
DB_USERNAME=root
DB_PASSWORD=
Step 3 Create Model, Database Migration, and Factory Faker Employee
Pada tahap ini saya akan membuat laravel model, database migrations, serta controller sekaligus melalui sebuah perintah artisan. Buka kembali jendela Terminal/ Command Prompt Anda, lalu jalankan perintah artisan berikut :
php artisan make:model Employee -mcr
Perintah diatas akan sekaligus menciptakan file laravel model, database migrations, serta file controller pada project Laravel Anda.
Lalu lanjutkan dengan membuat file laravel Factory Faker Employee, masih aktif pada jendela Terminal/ Command Prompt lalu jalankan perintah artisan berikut :
php artisan make:factory EmployeeFactory –model=Employee
Perintah artisan diatas akan menciptakan satu buah file faker yang terletak pada folder “database\factories”.
Step 4 Running Database Migration using Artisan
Tahap selanjutnya adalah membuat tabel employees pada database project laravel, untuk membuat sebuah tabel disini saya akan menggunakan perintah artisan laravel. Sebelum menjalankan perintah artisan database migrations laravel, sebaiknya telerbih dahulu kita lakukan sedikit modifikasi pada file AppServiceProvider.php yang terletak pada folder folder “app\Providers”, buka file tersebut lalu kita lakukan sedikit modifikasi dengan menambahkan sedikit code seperti berikut :
Tujuannya adalah menghindari error saat menjalankan perintah artisan database migrations pada Laravel.
Selanjutnya adalah melakukan modifikasi file migrations, yaitu file …_create_employees_table.php yang terletak pada folder “database\migrations\”, buka file database migrations tersebut lalu lakukan modifikasi dengan menambahkan beberapa potongan code untuk membentuk sebuah tabel pada database project Laravel, seperti berikut :
Setelah kebutuhan akan tabel selesai, maka saatnya kita jalankan perintah artisan migrate seperti berikut :
php artisan migrate
Perintah artisan diatas jika kita jalankan akan menciptakan beberapa tabel pada database seperti berikut :

Step 5 Add Dummy Record Data into tabel
Langkah selanjutnya adalah kita menambahkan dummy record data (data fake) pada tabel employees pada database project Laravel. Untuk membuat dummy record data langkah yang perlu kita lakukan adalah dengan melakukan modifikasi pada file fake EmployeeFactory.php yang terletak pada folder “database\factories”, buka file faker tersebut lalu tambahkan code seperti berikut :
Selanjutnya adalah menjalankan perintah artisan berikut untuk menciptakan data dummy.
php artisan tinker
Lalu jalankan perintah code berikut pada jendela laravel tinker.
factory(App\Employee::class, 100)->create();

Step 6 Add Route
Pada tahap ini saya menambahkan routing untuk mengakses url data pegawai, sehingga saya menambahkan sebuah route pada folder “routes\web.php” seperti berikut :
Step 7 Install PhpSpreadsheet
Untuk membuat laporan laravel excel menggunakan PhpSpreadsheet maka kita harus menginstallnya pada project laravel kita. Aktif pada jendela/command prompt project laravel Anda lalu jalankan perintah artisan seperti berikut :
composer require phpoffice/phpspreadsheet

Step 8 Create Laravel Blade File
Langkah selanjutnya adalah menambahkan file blade pada project Laravel, dimana file blade ini akan kita gunakan untuk menampilkan data pegawai dari tabel employees, dan di file blade ini pula nantinya kita akan membuat tombol export untuk menjalankan project Laravel Report Excel with PhpSpreadsheet yang kita bahas pada tutorial ini.
Buatlah sebuah file blade dengan nama index.blade.php dan letakkan pada folder “resources\views\pegawai\index.blade.php” Kemudian lakukan modifikasi sehingga menjadi seperti berikut :
Setep 9 Modify Controller EmployeeController
Setelah semua persiapan diatas kita lalui, maka selanjutnya adalah kita menyentuh file controller. Buka file EmployeeController.php pada folder “app\Http\Controllers” lalu lakukan modifikasi dengan menambahkan code pada method index(), serta menambahkan method export() seperti berikut:
Step 10 Run Laravel Development Server
Finally, tahap akhir adalah melakukan tes project Laravel Report Excel with PhpSpreadsheet, untuk menjalankan laravel server development dapat kita lakukan melalui jendela Terminal/ Command Prompt, masih aktif pada root project laravel Anda, lalu jalankan laravel perintah artisan laravel server development seperti berikut :
php artisan serve
Setelah laravel server development berjalan, maka selanjutnya kita akses project laravel kita melalui web browser dengan mengetikkan url http://localhost:8000/spreadsheet, jika berjalan dengan baik maka akan ditampilkan halaman project laravel kita seperti berikut :

Selanjutnya mari kita coba klik tombol export yang telah kita buat, jika berjalan dengan baik maka akan kita jumpai file export berupa file excel seperti berikut :

Jika file excel tersebut kita buka maka akan ditampilkan data hasil export seperti berikut.
