Pada artikel ini, kita akan membahas mengenai Cara Export Data ke Excel dengan PHP. Seperti yang kita ketahui, saat ini penggunaan Excel sangatlah populer dalam kemajuan dunia bisnis. Excel digunakan untuk membuat berbagai jenis laporan, seperti laporan keuangan, laporan penjualan, laporan kinerja karyawan, dan sebagainya.
Namun, membuat data Excel tidaklah mudah. Ada sejumlah metode yang dapat digunakan untuk menghasilkan file Excel dari data seperti menggunakan library PHPExcel, PHPSpreadSheet, ataupun dengan menghubungkan database ke Excel. Artikel ini akan membahas tentang cara menggunakan PHPSpreadSheet untuk menghasilkan file Excel.
Sebelum memulai, pastikan Anda telah menginstal PHP pada mesin Anda dan telah memilih editor kode. Selanjutnya, install PHPSpreadSheet melalui Composer dengan menjalankan perintah berikut di terminal:
“`
composer require phpoffice/phpspreadsheet
“`
Setelah itu, buat file PHP dan mulai menulis kode Anda untuk membuat file Excel.
## Membuat File Excel
Untuk membuat file Excel, pertama-tama Anda perlu membuat objek Spreadsheet. Objek tersebut adalah objek utama PHPSpreadSheet, yang mewakili file Excel. Berikut ini adalah potongan kode untuk membuat objek Spreadsheet:
“`php
“`
Setelah objek Spreadsheet dibuat, Anda dapat menambahkan lembar kerja dengan menggunakan objek Worksheet. Worksheet adalah lembar kerja di dalam file Excel. Potongan kode berikut membantu Anda menambahkan lembar kerja:
“`php
addSheet($worksheet, 0);
?>
“`
Pada potongan kode di atas, kita membuat objek Worksheet dan menambahkannya ke objek Spreadsheet. Dalam contoh ini, kami menambahkan Worksheet dengan nama “Sheet 1”.
## Menambahkan Data
Setelah lembar kerja ditambahkan ke file Excel, selanjutnya adalah menambahkan data ke dalam lembar kerja tersebut. Ada banyak cara untuk menambahkan data ke dalam Spreadsheet, tetapi dalam contoh ini, kami akan menggunakan metode setCellValue() untuk mengatur nilai sel.
Berikut adalah contoh kode untuk menambahkan data ke dalam lembar kerja:
“`php
addSheet($worksheet, 0);
$worksheet->fromArray($data, null, ‘A1’);
header(‘Content-Type: application/vnd.ms-excel’);
header(‘Content-Disposition: attachment;filename=”example.xlsx”‘);
$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, ‘Xlsx’);
$writer->save(‘php://output’);
?>
“`
Pada potongan kode di atas, kami menambahkan data ke dalam array dengan tiga kolom dan tiga baris. Kemudian, kita menggunakan fromArray() untuk menambahkan data ke dalam lembar kerja di Excel.
## Mengubah Format File Excel
Ketika file Excel dihasilkan, anda mungkin ingin mengubah format file Excel tersebut agar lebih mudah dibaca oleh pengguna. Anda dapat melakukan hal ini dengan code berikut:
“`php
addSheet($worksheet, 0);
$worksheet->fromArray($data, null, ‘A1’);
$styleArray = [
‘font’ => [
‘bold’ => true,
‘size’ => 14,
‘name’ => ‘Calibri’
],
‘borders’ => [
‘outline’ => [
‘borderStyle’ => \PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THICK,
‘color’ => [‘argb’ => ‘FFFF0000’],
],
],
‘alignment’ => [
‘horizontal’ => \PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER,
‘vertical’ => \PhpOffice\PhpSpreadsheet\Style\Alignment::VERTICAL_CENTER,
‘wrapText’ => true,
],
];
$worksheet->getStyle(‘A1:C4’)->applyFromArray($styleArray);
header(‘Content-Type: application/vnd.ms-excel’);
header(‘Content-Disposition: attachment;filename=”example.xlsx”‘);
$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, ‘Xlsx’);
$writer->save(‘php://output’);
?>
“`
Pada kode di atas, kami menambahkan sebuah variabel bernama $styleArray, yang berisi konfigurasi format untuk sebuah sel. Kami kemudian menerapkan format ini ke kisaran sel yang tercakup dari A1 ke C4 dengan menggunakan getStyle() dan applyFromArray().
Setelah mengatur format file Excel, kita dapat menghasilkan file Excel dengan content type header excel dan createWriter().
## FAQ
1. Apakah PHPSpreadSheet mendukung format file Excel lain selain ‘.xlsx’?
PHPSpreadSheet mendukung format file Excel lain selain .xlsx, seperti .xls dan .csv.
2. Bagaimana cara mengubah warna dari sel di Excel dengan PHPSpreadSheet?
Anda dapat menggunakan setFillColor() untuk mengubah warna dari sel di Excel. Contoh kode seperti di bawah ini:
“`php
addSheet($worksheet, 0);
$worksheet->fromArray($data, null, ‘A1’);
$worksheet->getStyle(‘A1:C1’)->getFill()
->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)
->getStartColor()->setARGB(‘FFFF0000’);
header(‘Content-Type: application/vnd.ms-excel’);
header(‘Content-Disposition: attachment;filename=”example.xlsx”‘);
$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, ‘Xlsx’);
$writer->save(‘php://output’);
?>
“`
## Video
Berikut ini adalah video tutorial tentang Cara Export Data ke Excel dengan PHP menggunakan PHPSpreadsheet:
Dalam video tersebut, terdapat langkah-langkah untuk membuat file Excel dan menambahkan data ke file tersebut, serta mengatur format file Excel. Anda juga dapat melihat bagaimana kita menggunakan IOFactory untuk menyimpan file Excel. Selain itu, video ini juga menjelaskan cara mengubah warna dari sel di Excel. Semoga video ini membantu Anda dalam menghasilkan file Excel dengan PHP.
## Kesimpulan
Di era digital saat ini, kemampuan untuk membuat file Excel sangatlah penting dalam bisnis. Dalam artikel ini, kita telah mempelajari bagaimana menghasilkan file Excel dengan menggunakan PHP melalui PHPSpreadSheet. Anda telah belajar membuat objek Spreadsheet dan Worksheet, menambahkan data ke dalam lembar kerja, mengatur format file Excel, dan menghasilkan file Excel. Anda juga telah memahami cara mengubah warna dari sel dalam file Excel dan menyelesaikan dua pertanyaan yang umum ditanyakan tentang PHPSpreadSheet. Dengan pemahaman yang baik tentang PHPSpreadSheet, Anda dapat membuat file Excel yang lebih efisien dan berguna dalam bisnis Anda.