CARA EXPORT DATA DARI PDF KE EXCEL
Dalam dunia pemrograman, tidak semua tugas dapat diselesaikan hanya dengan coding. Kadang-kadang kita perlu mengubah data yang ada dalam Database menjadi format yang lebih mudah dipahami, seperti Excel. Bagi seorang programmer, fungsi export data ke Excel sangat penting, terutama jika ingin membuat laporan atau analisis data.
Dalam artikel ini, kita akan membahas berbagai cara untuk melakukan export data ke Excel menggunakan PHP. Kita akan melihat berbagai metode, seperti menggunakan Spreadsheet Library, MySQLi, dan PHPExcel Library.
## Cara Export Data ke Excel dengan Php Dan Mysqli
Salah satu cara yang cukup mudah untuk melakukan export data ke Excel adalah dengan menggunakan library PHP dan MySQLi. Berikut adalah langkah-langkahnya:
### 1. Membuat Database
Pertama-tama, kita perlu membuat database MySQL dan tabel. Berikut adalah contohnya:
“`sql
CREATE DATABASE db_member;
USE db_member;
CREATE TABLE member(
id int(11) AUTO_INCREMENT PRIMARY KEY,
nama varchar(100) NOT NULL,
email varchar(100) NOT NULL,
alamat varchar(100) NOT NULL
);
“`
### 2. Menambahkan Data
Setelah database dan tabel dibuat, kita perlu menambahkan beberapa data ke dalam tabel. Berikut adalah contoh data yang akan kita tambahkan:
“`sql
INSERT INTO member(nama, email, alamat) VALUES
(‘Ahmad’, ‘[email protected]’, ‘Jakarta’),
(‘Budi’, ‘[email protected]’, ‘Bandung’),
(‘Cecep’, ‘[email protected]’, ‘Surabaya’);
“`
### 3. Membuat Koneksi Database
Selanjutnya, kita perlu membuat file koneksi.php untuk menghubungkan aplikasi kita dengan database. Berikut adalah contohnya:
“`php
Baca Juga : Cara Menghitung Varians Di Excel
```php
0)
while ($row = mysqli_fetch_assoc($result))
$data[] = $row;
“`
Kode di atas mengambil semua data dari tabel member dan menampungnya ke dalam array $data.
### 5. Export Data ke Excel
Setelah data berhasil diambil, kita perlu mengekspornya ke dalam format Excel. Untuk itu, kita akan menggunakan library PHPExcel. Berikut adalah contoh kode untuk mengekspor data ke Excel:
“`php
getActiveSheet()->setTitle(‘Data Member’);
// Menambahkan header
$objPHPExcel->getActiveSheet()->setCellValue(‘A1’, ‘ID’);
$objPHPExcel->getActiveSheet()->setCellValue(‘B1’, ‘Nama’);
$objPHPExcel->getActiveSheet()->setCellValue(‘C1’, ‘Email’);
$objPHPExcel->getActiveSheet()->setCellValue(‘D1’, ‘Alamat’);
// Menambahkan data
$no = 2;
foreach ($data as $row)
$objPHPExcel->getActiveSheet()->setCellValue(‘A’ . $no, $row[‘id’]);
$objPHPExcel->getActiveSheet()->setCellValue(‘B’ . $no, $row[‘nama’]);
$objPHPExcel->getActiveSheet()->setCellValue(‘C’ . $no, $row[’email’]);
$objPHPExcel->getActiveSheet()->setCellValue(‘D’ . $no, $row[‘alamat’]);
$no++;
// Mengatur lebar kolom
$objPHPExcel->getActiveSheet()->getColumnDimension(‘A’)->setWidth(5);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘B’)->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘C’)->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘D’)->setWidth(30);
// Membuat file Excel
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, ‘Excel2007’);
$filename = “data_member.xlsx”;
$objWriter->save($filename);
// Download file Excel
header(‘Content-Disposition: attachment; filename=”‘ . $filename . ‘”‘);
header(‘Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet’);
header(‘Content-Length: ‘ . filesize($filename));
readfile($filename);
“`
Kode di atas akan mengekspor data ke dalam file Excel dengan format .xlsx dan langsung melakukan download file.
## Cara Export Data dari Database ke Excel dengan PhpSpreadsheet
Selain PHPExcel, ada juga library lain yang dapat digunakan untuk mengekspor data ke Excel, yaitu PhpSpreadsheet. PhpSpreadsheet merupakan salah satu alternatif dari PHPExcel yang dikembangkan oleh perusahaan PHPOffice.
Berikut adalah langkah-langkah untuk mengekspor data ke Excel dengan PhpSpreadsheet:
### 1. Membuat Database
Sama seperti pada langkah pertama sebelumnya, kita perlu membuat database MySQL dan tabel sebagai sumber data. Berikut adalah contohnya:
“`sql
CREATE DATABASE db_user;
USE db_user;
CREATE TABLE user(
id int(11) AUTO_INCREMENT PRIMARY KEY,
nama varchar(50) NOT NULL,
email varchar(50) NOT NULL,
alamat varchar(100) NOT NULL
);
INSERT INTO user(nama, email, alamat) VALUES
(‘Erik’, ‘[email protected]’, ‘Jakarta’),
(‘Fathur’, ‘[email protected]’, ‘Bandung’),
(‘Gunawan’, ‘[email protected]’, ‘Surabaya’);
“`
### 2. Membuat Koneksi Database
Seperti sebelumnya, kita perlu membuat koneksi.php untuk menghubungkan aplikasi kita dengan database. Berikut adalah contohnya:
“`php
0)
while ($row = mysqli_fetch_assoc($result))
$data[] = $row;
“`
### 4. Export Data ke Excel
Berikut adalah contoh kode untuk mengekspor data ke dalam format Excel menggunakan PhpSpreadsheet:
“`php
getActiveSheet();
$sheet->setTitle(‘Data User’);
// Menambahkan header
$sheet->setCellValue(‘A1’, ‘ID’);
$sheet->setCellValue(‘B1’, ‘Nama’);
$sheet->setCellValue(‘C1’, ‘Email’);
$sheet->setCellValue(‘D1’, ‘Alamat’);
// Menambahkan data
$no = 2;
foreach ($data as $row)
$sheet->setCellValue(‘A’ . $no, $row[‘id’]);
$sheet->setCellValue(‘B’ . $no, $row[‘nama’]);
$sheet->setCellValue(‘C’ . $no, $row[’email’]);
$sheet->setCellValue(‘D’ . $no, $row[‘alamat’]);
$no++;
// Mengatur lebar kolom
$sheet->getColumnDimension(‘A’)->setWidth(5);
$sheet->getColumnDimension(‘B’)->setWidth(20);
$sheet->getColumnDimension(‘C’)->setWidth(20);
$sheet->getColumnDimension(‘D’)->setWidth(30);
// Membuat file Excel
$writer = new Xlsx($spreadsheet);
$filename = “data_user.xlsx”;
$writer->save($filename);
// Download file Excel
header(‘Content-Disposition: attachment; filename=”‘ . $filename . ‘”‘);
header(‘Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet’);
header(‘Content-Length: ‘ . filesize($filename));
readfile($filename);
“`
Kode di atas akan mengekspor data ke dalam file Excel dengan format .xlsx dan langsung melakukan download file.
## FAQ
### 1. Apa itu library PHPExcel dan PhpSpreadsheet?
PHPExcel dan PhpSpreadsheet adalah library PHP yang digunakan untuk membuat, membaca, dan menulis file Excel. Keduanya sangat berguna, terutama dalam proses analisis data. Namun, PHPExcel sudah tidak dikembangkan lagi dan digantikan oleh PhpSpreadsheet.
### 2. Apa keuntungan menggunakan PhpSpreadsheet dibanding PHPExcel?
Salah satu keuntungan utama dari menggunakan PhpSpreadsheet adalah performa yang lebih baik. PhpSpreadsheet memiliki desain objek yang lebih modern, sehingga lebih cepat dan efisien dalam memproses data. Selain itu, PhpSpreadsheet juga memiliki fitur yang lebih lengkap dan lebih mudah digunakan daripada PHPExcel.