Cara Export Data Ke Excel Di Php
Pada artikel ini, kita akan membahas tentang cara melakukan ekspor data ke Excel menggunakan bahasa pemrograman PHP. Ekspor data ke Excel merupakan salah satu kebutuhan yang umum ditemukan dalam pembuatan aplikasi web atau desktop. Dalam tutorial ini, kita akan menggunakan library PhpSpreadsheet untuk melakukan ekspor data ke Excel.
Pengertian PhpSpreadsheet
PhpSpreadsheet adalah library PHP yang berguna untuk melakukan ekspor data ke Excel. Library ini merupakan pengganti dari library PHPExcel yang sudah tidak lagi dikembangkan. PhpSpreadsheet dikembangkan oleh PhpOffice dan tersedia secara open source di GitHub.
Cara Install PhpSpreadsheet
Cara pertama untuk menginstal PhpSpreadsheet adalah dengan menggunakan Composer. Composer adalah package manager untuk PHP yang digunakan untuk mengelola package atau library PHP. Langkah-langkahnya sebagai berikut:
1. Install composer
Pertama, pastikan Composer sudah terinstal di komputer anda. Jika belum, anda dapat mengunduhnya di https://getcomposer.org/.
2. Buat project baru
Buka terminal atau command prompt, lalu buat project baru dengan menjalankan perintah berikut:
“`
composer create-project phpoffice/phpspreadsheet
“`
Perintah di atas akan membuat project baru dengan nama “phpspreadsheet” menggunakan library PhpSpreadsheet.
3. Gunakan PhpSpreadsheet
Setelah project baru berhasil dibuat, kita dapat menggunakan PhpSpreadsheet dengan menambahkan baris berikut pada file PHP yang akan digunakan:
“`php
require ‘vendor/autoload.php’;
“`
Kita juga dapat menggunakan PhpSpreadsheet dengan mengunduh library langsung dari website resminya di https://phpoffice.github.io/PhpSpreadsheet/.
Cara Melakukan Ekspor Data Ke Excel
Setelah PhpSpreadsheet berhasil terinstal, kita dapat melakukan ekspor data ke Excel dengan langkah-langkah berikut:
1. Membuat file Excel baru
Langkah pertama adalah membuat file Excel baru yang akan digunakan untuk menampung data yang akan diekspor. Kita dapat membuat file Excel baru dengan menggunakan kode berikut:
“`php
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$writer = new Xlsx($spreadsheet);
$writer->save(‘data.xlsx’);
“`
Baris pertama merupakan pemanggilan library PhpSpreadsheet. Kemudian, pada baris kedua dan ketiga, kita membuat objek dari kelas Spreadsheet dan Writer. Objek Writer digunakan untuk menulis data ke dalam file Xlsx, sedangkan objek Spreadsheet merupakan file kosong yang akan digunakan sebagai template untuk menampung data.
Setelah objek Writer dan objek Spreadsheet berhasil dibuat, kita dapat menyimpannya sebagai file Excel dengan menggunakan perintah “save” seperti pada baris ketiga. Nama file Excel dapat disesuaikan dengan keinginan kita.
2. Menulis data ke dalam file Excel
Setelah file Excel berhasil dibuat, langkah selanjutnya adalah menulis data ke dalamnya. Kita dapat menulis data ke dalam file Excel dengan menggunakan kode berikut:
“`php
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue(‘A1’, ‘Nama’);
$sheet->setCellValue(‘B1’, ‘Email’);
$sheet->setCellValue(‘C1’, ‘Telepon’);
$sheet->setCellValue(‘A2’, ‘John Doe’);
$sheet->setCellValue(‘B2’, ‘[email protected]’);
$sheet->setCellValue(‘C2’, ‘0812345678’);
$writer = new Xlsx($spreadsheet);
$writer->save(‘data.xlsx’);
“`
Pada kode di atas, kita membuat objek Spreadsheet dan objek Sheet. Objek Sheet digunakan untuk menampung data yang akan diekspor ke dalam file Excel. Pada baris keempat hingga keenam, kita menentukan judul kolom di file Excel dengan menggunakan perintah “setCellValue”.
Pada baris ketujuh hingga kesembilan, kita menulis data ke dalam file Excel dengan menggunakan perintah “setCellValue”. Data yang ditulis adalah nama, email, dan telepon. Jika kita memiliki data yang lebih banyak, kita dapat menuliskannya di baris berikutnya dengan menggunakan kode yang sama.
Setelah data berhasil ditulis ke dalam file Excel, kita dapat menyimpannya dengan menggunakan perintah “save” seperti sebelumnya.
3. Menggunakan Header dan Footer
Kita dapat menambahkan header dan footer pada file Excel dengan menggunakan kode berikut:
“`php
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue(‘A1’, ‘Nama’);
$sheet->setCellValue(‘B1’, ‘Email’);
$sheet->setCellValue(‘C1’, ‘Telepon’);
$sheet->setCellValue(‘A2’, ‘John Doe’);
$sheet->setCellValue(‘B2’, ‘[email protected]’);
$sheet->setCellValue(‘C2’, ‘0812345678’);
$header = ‘Export Data Ke Excel’;
$sheet->getHeaderFooter()->setOddHeader($header);
$footer = ‘Dibuat Oleh PhpSpreadsheet’;
$sheet->getHeaderFooter()->setOddFooter($footer);
$writer = new Xlsx($spreadsheet);
$writer->save(‘data.xlsx’);
“`
Pada kode di atas, kita menambahkan header dan footer pada file Excel dengan menggunakan perintah “setOddHeader” dan “setOddFooter”. Header dan footer akan muncul pada halaman ganjil dari file Excel.
Cara Import File Excel Ke SQL Server
Pada artikel sebelumnya, kita telah membahas tentang cara melakukan ekspor data ke Excel menggunakan bahasa pemrograman PHP. Pada artikel ini, kita akan membahas tentang cara melakukan import file Excel ke SQL Server.
Pengertian SQL Server
SQL Server adalah salah satu sistem manajemen basis data relasional paling populer di dunia. SQL Server dikembangkan oleh Microsoft dan digunakan untuk menyimpan, mengelola, dan memproses data dalam skala besar.
Cara Import File Excel Ke SQL Server
Langkah-langkah untuk melakukan import file Excel ke SQL Server adalah sebagai berikut:
1. Membuat Tabel Baru
Langkah pertama adalah membuat tabel baru yang akan digunakan untuk menampung data dari file Excel yang akan diimpor. Kita dapat membuat tabel baru dengan menggunakan kode SQL berikut:
“`sql
CREATE TABLE data (
id INT PRIMARY KEY,
nama VARCHAR(255),
email VARCHAR(255),
telepon VARCHAR(255)
);
“`
Pada kode di atas, kita membuat tabel baru dengan nama “data” dan memiliki empat kolom yaitu id, nama, email, dan telepon. Kolom id merupakan kolom primary key, yang berarti nilai di dalamnya harus unik.
2. Membuat File DSN
File DSN (Data Source Name) digunakan untuk menghubungkan SQL Server dengan file Excel yang akan diimpor. Kita dapat membuat file DSN dengan langkah-langkah berikut:
– Buka panel kontrol di komputer Anda.
– Cari dan klik “Administrative Tools”.
– Klik “Data Sources (ODBC)”.
– Pilih tab “System DSN”.
– Klik tombol “Add”.
– Pilih driver “Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)”.
– Beri nama pada file DSN.
– Klik tombol “Select Workbook” dan pilih file Excel yang akan diimpor.
– Klik tombol “OK” untuk menyelesaikan proses.
3. Membuat Koneksi Ke SQL Server
Setelah file DSN berhasil dibuat, langkah selanjutnya adalah membuat koneksi ke SQL Server. Kita dapat membuat koneksi ke SQL Server dengan menggunakan kode berikut:
“`php
$serverName = “localhost\SQLEXPRESS”;
$connectionInfo = array(“Database”=>”databaseName”, “UID”=>”username”, “PWD”=>”password”);
$conn = sqlsrv_connect($serverName, $connectionInfo);
if(!$conn)
die(print_r(sqlsrv_errors(), true));
“`
Pada kode di atas, kita mengganti nilai dari variabel $serverName, “databaseName”, “username”, dan “password” dengan nilai yang sesuai dengan konfigurasi SQL Server dan database yang akan digunakan.
4. Import Data Dari File Excel
Setelah koneksi berhasil dibuat, langkah terakhir adalah mengimport data dari file Excel ke dalam tabel baru. Kita dapat melakukan import data dengan menggunakan kode berikut:
“`php
$filePath = “D:\data.xlsx”;
$sql = “INSERT INTO data (id, nama, email, telepon) VALUES (?, ?, ?, ?)”;
$stmt = sqlsrv_prepare($conn, $sql, array(NULL, NULL, NULL, NULL));
$objReader = PHPExcel_IOFactory::createReader(‘Excel2007’);
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load($filePath);
$objWorksheet = $objPHPExcel->getActiveSheet();
foreach ($objWorksheet->getRowIterator() as $row)
$cellIterator = $row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(FALSE);
$data = array();
foreach ($cellIterator as $cell)
$data[] = $cell->getValue();
if(sizeof($data) == 4)
sqlsrv_execute($stmt, $data);
“`
Pada kode di atas, kita mengganti nilai dari variabel $filePath dengan path dari file Excel yang akan diimpor. Kemudian, pada baris keempat hingga kelima belas, kita membuat statement SQL untuk mengimport data ke dalam tabel baru.
Pada baris keenam hingga kedelapan, kita menggunakan library PHPExcel untuk membuka file Excel dan membaca data di dalamnya. Library PHPExcel dapat diunduh dari https://github.com/PHPOffice/PHPExcel.
Pada baris kesembilan hingga dua puluh satu, kita menggunakan perulangan untuk membaca setiap baris di dalam file Excel dan memasukkannya ke dalam tabel baru. Jika ingin mengubah format file Excel yang akan diimpor, kita dapat mengganti nilai dari variabel $objReader dengan format yang sesuai.
FAQ
1. Bagaimana cara mengubah warna font pada file Excel yang dibuat dengan PhpSpreadsheet?
Untuk mengubah warna font pada file Excel yang dibuat dengan PhpSpreadsheet, kita dapat menggunakan perintah “getStyle” dan “getFont” seperti pada kode berikut:
“`php
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$cell = $sheet->getCell(‘A1’);
$cell->setValue(‘Contoh Warna Font’);
$style = $sheet->getStyle(‘A1’);
$font = $style->getFont();
$font->getColor()->setARGB(‘FF0000’);
$writer = new Xlsx($spreadsheet);
$writer->save(‘data.xlsx’);
“`
Pada kode di atas, kita mengubah warna font pada sel A1 menjadi merah.
2. Bagaimana cara mengubah tipe data kolom pada tabel SQL Server setelah melakukan import data dari file Excel?
Untuk mengubah tipe data kolom pada tabel SQL Server setelah melakukan import data dari file Excel, kita dapat menggunakan perintah ALTER TABLE. Langkah-langkahnya sebagai berikut:
1. Buka Microsoft SQL Server Management Studio.
2. Pilih database yang digunakan.
3. Klik kanan pada tabel yang ingin diubah dan pilih “Design”.
4. Ubah tipe data kolom sesuai kebutuhan.
5. Klik tombol “Save” untuk menyimpan perubahan.
Video Tutorial
Berikut adalah video tutorial tentang cara melakukan ekspor data ke Excel menggunakan PhpSpreadsheet:
[Insert Youtube Video Link Here]