Tulisan ini akan mengajarkan kepada pembaca bagaimana mengexport data ke format excel dengan menggunakan PHP 7 dan PhpSpreadsheet, sangat berguna jika web app anda ingin ditambahkan fasilitas export ke format excel. PhpSpreadsheet adalah library php murni yang digunakan untuk membaca dan menulis file excel, baik format excel lama (.xls) maupun format excel terbaru (.xlsx), jadi PhpSpreadsheet ini bisa digunakan untuk mengimport file excel ke web app (untuk kemudian disimpan ke database misalnya) atau untuk mengexport data web app (biasanya dari database) ke file execel. tetapi pada tulisan ini hanya mengjarkan cara export saja, untuk importnya akan kami bahas dikemudian hari, insya allah. Pertama kita install atau download dulu library PhpSpreadsheet dengan composer. Untuk bahan coba-coba, kita bikin saja folder baru misal test, kemudian copas hasil download ada ke folder test tersebut. Kemudian buat file php, misal test.php dengan text editor anda. Kemudian buka command prompt anda dan masuk ke folder test yang sudah anda buat seperti ini Pastikan anda punya koneksi internet, karena composer akan mendownload libray PhpSpreadsheet dari internet. Kemudian buka file test.php dan ketik kode berikut
Contoh diatas misalnya kira sudah punya data siswa dari mysql yang tersimpan dalam variabel $siswa, Nah sekarang coba kunjungi file anda dalam web browser anda, maka akan keluar notifikasi untuk download file excel dengan nama data-siswa.xlsx PHPOffice adalah library PHP yang terdiri dari 3 bagian terpisah yaitu PHPWord, PHPSpreadsheet, dan PHPPresentation.
Pada bagian ini saya akan melakukan uji coba pembuatan file berformat xlsx secara terprogram yang didalamnya berisi teks hello world dengan bahasa pemprograman PHP, library PHPSpreadsheet dan framework CodeIgniter. Yang perlu disiapkan adalah
Langkah-langkahnya:
3. ketikan perintah ini pada terminal composer require phpoffice/phpspreadsheet tunggu proses installnya sampai selesai (membutuhkan waktu tergantung daripada koneksi internet) 4. Buka file application/config/config.php dan edit vendor directory path nya (jika sudah, skip langkah ini) menjadi $config[‘composer_autoload’] = ‘vendor/autoload.php’; 5. Buat controller baru di folder application/controller dengan nama Excel.php, kode lengkapnya seperti ini 6. coba jalankan di browser dengan alamat http://127.0.0.1/ciphpoffice/index.php/excel maka file simple.xlsx akan terdownload 7. Coba kita buka dengan aplikasi Office begitulah hasil sederhana nya Penjelasan kodesaat akan memanggil kelas-kelas di PHPSpreadsheet, kita harus melakukan import menggunakan use … use PhpOffice\PhpSpreadsheet\Spreadsheet;use PhpOffice\PhpSpreadsheet\Writer\Xlsx; Buat objek baru dari kelas Spreadsheet $spreadsheet = new Spreadsheet(); menentukan value dari cell berdasarkan koordinat bisa menggunakan method setCellValue() $sheet = $spreadsheet->getActiveSheet();$sheet->setCellValue(‘A1’, ‘Hello World !’); Membuat objek baru dari kelas Xlsx $writer = new Xlsx($spreadsheet); Content-Dispotition header digunakan untuk menentukan nama file dan memaksa browser menampilkan dialog save, kita juga menentukan Content-Type dan Cache-Control nya |