Pada artikel kali ini, kita akan membahas tentang cara memperoleh data dari sebuah database dengan cara yang efisien. Salah satu cara yang sering digunakan untuk mendapatkan data dari database adalah melalui ekspor data ke file Excel. Dalam artikel ini, kita akan membahas bagaimana cara melakukan ekspor data ke file Excel dengan Codeigniter 4 menggunakan PHPSPreadsheet.
Pertama-tama, mari kita bahas sedikit tentang Codeigniter 4 dan PHPSPreadsheet. Codeigniter 4 adalah sebuah framework PHP yang digunakan untuk membangun aplikasi web dengan cepat dan efisien. Framework ini sangat ringan dan mudah digunakan, sehingga sangat cocok untuk pengembangan aplikasi web kecil hingga menengah.
Sedangkan PHPSPreadsheet adalah sebuah library PHP yang digunakan untuk membaca dan menulis file Excel. Dengan menggunakan PHPSPreadsheet, kita dapat melakukan aksi seperti mengimpor data dari file Excel ke database, atau sebaliknya, melakukan ekspor data dari database ke file Excel.
Sekarang, mari kita masuk ke inti artikel ini yaitu bagaimana cara melakukan ekspor data ke file Excel dengan Codeigniter 4 dan PHPSPreadsheet. Berikut langkah-langkahnya.
1. Install PHPSPreadsheet
Langkah pertama adalah menginstal PHPSPreadsheet. Anda dapat mengunduh PHPSPreadsheet dari situs resminya atau menggunakan Composer untuk menginstalnya. Jika Anda menggunakan Composer, jalankan perintah berikut di terminal:
“`
composer require phpoffice/phpspreadsheet
“`
Setelah itu, include library PHPSPreadsheet di file yang akan digunakan untuk melakukan ekspor data.
“`
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
“`
2. Membuat fungsi ekspor data
Untuk melakukan ekspor data, kita perlu membuat fungsi yang akan mengambil data dari database dan menuliskannya ke file Excel. Berikut contoh fungsi yang dapat digunakan.
“`
public function export_excel()
//load model
$this->load->model(‘m_data’);
//ambil data dari database
$mahasiswa = $this->m_data->tampil_data()->result();
//membuat objek spreadsheet
$spreadsheet = new Spreadsheet();
//membuat halaman worksheet
$worksheet = $spreadsheet->getActiveSheet();
//mengisi header tabel
$worksheet->setCellValue(‘A1’, ‘NIM’);
$worksheet->setCellValue(‘B1’, ‘Nama’);
$worksheet->setCellValue(‘C1’, ‘Jurusan’);
$worksheet->setCellValue(‘D1’, ‘Alamat’);
//mengisi data tabel
$i = 2;
foreach($mahasiswa as $m)
$worksheet->setCellValue(‘A’.$i, $m->nim);
$worksheet->setCellValue(‘B’.$i, $m->nama);
$worksheet->setCellValue(‘C’.$i, $m->jurusan);
$worksheet->setCellValue(‘D’.$i, $m->alamat);
$i++;
//menulis file Excel
$writer = new Xlsx($spreadsheet);
$filename = ‘data_mahasiswa.xlsx’;
$writer->save($filename);
//download file
header(‘Content-Type: application/vnd.ms-excel’);
header(‘Content-Disposition: attachment;filename=”‘.$filename.'”‘);
header(‘Cache-Control: max-age=0’);
readfile($filename);
“`
Fungsi di atas akan mengambil data mahasiswa dari database, dan menulisnya ke file Excel. Setelah itu, file Excel akan didownload oleh pengguna.
3. Membuat tampilan untuk fungsi ekspor data
Setelah membuat fungsi ekspor data, selanjutnya kita perlu membuat tampilan untuk menampilkan tombol ekspor data. Berikut contoh tampilan yang dapat digunakan.
“`