Bac Tulis File CSV den ca ngan PHP

Tutorial dibuat oleh Achmad Sol lichin (http:/ //achmatim. .net) pada ta anggal 09 Maret 2010 CSV atau Comma‐Se eparated Value merupak suatu fo kan ormat penyaj jian data tek ks dimana setiap data (field) dipisa ahkan denga suatu pem an misah koma (,) dan setiap baris re ecord dipisah hkan dengan baris baru (line‐brea ak). Selain m menggunakan pemisah (delimiter) koma terkad h dang jenis file CSV juga dapat dipisa ahkan dengan titik‐kom (;) atau ka ma arakter <tab Jenis file C sendiri, dapat dibaca oleh semua b>. CSV a software pengolah data (spreadsheet) seperti Microso Excel dan OpenOffice e oft n Calc. Spe esifikasi dan penjelasan mengenai file CSV dapat ditemukan di Wikipedia a. erupakan salah satu bahasa pemrograman yang mendukung penangana file denga cukup g an an PHP me baik, ter rmasuk file C CSV. Bahkan mulai versi 4, PHP men nambahkan f fungsi khusu untuk pen us nanganan file CSV, yaitu fgetcs untuk baca file CSV dan fputcsv untuk me , sv() v() embuat (men nulis) file CSV Dalam V. tutorial ini akan diba ahas mengen bagaiman baca tulis file CSV den nai na s ngan menggu unakan PHP.

Bentuk Umum Fungsi fge etcsv() da fputcsv an v()
Sebelum disajikan c m contoh programnya, ada baiknya kit pahami du mengena bagaimana bentuk a ta ulu ai a umum a atau spesifika dari fungs fgetcsv() d fputcsv(). asi si dan getcsv() Bentuk umum file fg
array fgetcsv ( a resource $handle [, int

)

$le ength $delimiter = ',' $ [, string $ $enclosure = '"' [, string $ $escape = '\\' ]]]]
[, string

Berdasarkan bentuk umum di at fungsi fg k tas, getcsv() yang merupakan fungsi pembacaan file CSV yang g n C memiliki output be erupa array hasil pemb bacaan file CSV. Fungsi memiliki 5 parameter dimana C r paramet pertama harus disert ter takan, namun parameter yang lainnya bersifat op n r psional (pilihan). Berikut i penjelasa masing‐masing parameter tersebu ini an ut: $handle. Merup pakan pointe pembacaa file, dapa berupa hasil dari fun fopen(), popen() er an at ngsi mau upun fsockop pen(). $len ngth. Merupakan jumlah atau panja karakter pembacaan baris di file CSV. Param h ang n e meter ini haru lebih besa dari jumla karakter b us ar ah baris yang pa aling panjang di file CSV Memang agak sulit V. a men nentukan pa astinya, nam mun kita dap memper pat rkirakannya tanpa harus benar‐ben tepat s nar sesu dengan b uai baris terpanjang. Umum mnya parame eter ini cuku diisi deng 1000 at 1024 up gan tau deng asumsi jumlah karak tiap bari tidak lebih dari 1000 at 1024 ter gan kter is tau rsebut. $delimiter. Para ameter ini m menentukan j jenis pemisa (delimiter field dalam file CSV ya akan ah r) m ang diba Nilai def aca. fault dari par rameter ini a adalah koma (,). $enc closure. Parameter ini m menentukan karakter pe engapit (enclosure) untu setiap field dalam uk file C CSV. Default t‐nya adalah tanda kutip‐ ‐dua (“). $esc cape. Parameter pilihan ini menentukan karakter escape yang digunakan dalam file CSV. r C

1

Achma Solichin | http://achm ad matim.net

if ($tulis) { echo "<h2>Data berhasil disimpan</h2>".csv'. “nama” dan “nilai”. $tulis = fputcsv($fp. string $enclosure = '"' ]] Dari bentuk umum di atas. $nilai = $_POST['nilai']. $nama.csv”. $delimiter dan $enclosure sama seperti parameter pada fungsi fgetcsv(). 'a+'). $fields [. Fungsi ini memiliki return‐value berupa bilangan integer yang merupakan panjang data (string) yang berhasil dituliskan ke file CSV. $arrdata = array($nim.csv” yang akan diisi dengan data mahasiswa.php 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 <html> <head><title>Input Nilai Mahasiswa (Demo Menulis File CSV) </title> </head> <body> <h1>Input Nilai Mahasiswa</h1> <form action="" method="post"> NIM : <input type="text" name="nim" maxlength="10"/><br/> NAMA : <input type="text" name="nama" size="30"/><br/> NILAI : <input type="text" name="nilai" size="5"/><br/> <input type="submit" name="Simpan" value="Simpan"/> <input type="reset" name="Reset" value="Reset"/> </form> <?php if (isset($_POST['Simpan'])) { //ambil data $nim = $_POST['nim']. terlihat bahwa fungsi fputcsv() memiliki 4 parameter dimana dua parameter pertama bersifat wajib.' [. maka program akan menambahkan datanya ke file “mahasiswa.Bentuk umum file fputcsv() int fputcsv ( resource array ) $handle . Contoh Program Menulis ke File CSV Pada contoh program ini. Masing‐masing field akan dipisahkan dengan delimiter koma (. 2 Achmad Solichin | http://achmatim. kita akan membuat file CSV dengan nama “mahasiswa. Mengenai penjelasan parameter fungsi. $nama = $_POST['nama']. Untuk parameter $fields dapat berisi array dari nilai data untuk setiap baris (record) yang akan ditambahkan ke file CSV. Untuk menyederhanakan contoh. } else { echo "<h2>Data gagal disimpan</h2>". untuk $handle. $arrdata). $fp = fopen('mahasiswa. string $delimiter = '. Fungsi akan bernilai FALSE (‐1) jika gagal melakukan penulisan file. data mahasiswa yang akan dituliskan hanya berisi 3 (tiga) field yaitu “nim”.net . $nilai). Nama File: tulis_csv_mahasiswa. Pengisian data dilakukan melalui sebuah form dimana saat tombol simpan ditekan.).

$data[2]. echo "<td>". 1000.csv".csv'>Download file CSV</a></p>". Nama File: baca_csv_mahasiswa.php 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 <html> <head><title>Daftar Nilai Mahasiswa (Demo Baca File CSV)</title> </head> <body> <h1>Daftar Nilai Mahasiswa</h1> <table width="100%" border="1"> <tr> <th>NO</th> <th>NIM</th> <th>NAMA</th> <th>NILAI</th> </tr> <?php if (($handle = fopen("mahasiswa. } //end while fclose($handle). fclose($fp).csv” yang sudah diisi dengan program sebelumnya dan akan menampilkannya di sebuah tabel. ". } ?> } echo "<p><a href='baca_csv_mahasiswa. echo "<td>". while (($data = fgetcsv($handle.$data[0]. echo "</tr>". "r")) !== FALSE) { $row = 1."</td>".$row++.$data[1]. } //end if ?> </table> <p><a href="tulis_csv_mahasiswa.php'>Lihat isi file CSV</a> | echo "<a href='mahasiswa. Program akan membaca file “mahasiswa.31 32 33 34 35 36 37 38 39 40 "."</td>"."</td>". </body> </html> Contoh Program Membaca File CSV Contoh program ini akan mendemonstrasikan bagaimana pembacaan file CSV.")) !== FALSE) { echo "<tr>".php">Input Nilai Mahasiswa</a></p> </body> </html> 3 Achmad Solichin | http://achmatim. echo "<td>"."</td>". echo "<td>".net .

net .Demo dan Download Contoh Program • • Demo Program baca tulis CSV dengan PHP dapat dilihat di http://bit. Kegiatan sehari‐hari adalah sebagai Dosen di Universitas Budi Luhur (http://www. Tidak diperbolehkan melakukan penulisan ulang atau mengkomersialkan tutorial ini kecuali mendapatkan ijin terlebih dahulu dari penulis.ac. Penulis memiliki situs utama di http://achmatim. dimodifikasi dan disebarluaskan secara bebas untuk tujuan pendidikan. web developer.bl. Kegiatan lain aktif sebagai programmer. Adalah Lulusan Teknik Informatika. YM achmatim. menghapus atau mengubah atribut penulis dokumen ini dan pernyataan dalam lisensi dokumen yang disertakan di setiap dokumen. pembelajaran dan bukan komersial (non profit).ly/PHPBacaTulisCSV Download Contoh Program di http://achmatim.net yang berisi berbagai tutorial praktis di bidang komputer serta menyediakan buku gratis komputer. system analyst dan memberikan pelatihan di berbagai bidang komputer serta membuat tutorial‐tutorial praktis di bidang komputer.id). Saat ini sedang menempuh pendidikan S2 di Magister Teknologi Informasi Universitas Indonesia (2008). Penulis dapat dihubungi melalui email di achmatim@gmail. 4 Achmad Solichin | http://achmatim. Lisensi Dokumen Seluruh isi dalam dokumen ini dapat digunakan. misalnya membaca file dari database kemudian menuliskannya ke dalam file CSV. namun selanjutnya dapat dikembangkan menjadi aplikasi yang lebih kompleks.net/download/22 Kesimpulan Proses baca tulis file CSV di PHP ternyata cukup mudah karena memang sudah tersedia fungsi yang diperlukan. Selamat mencoba dan maju terus ilmu pengetahuan Indonesia! ‐oOo‐ Tentang Penulis Achmad Solichin. Fakultas Teknologi Informasi. Universitas Budi Luhur. Tutorial ini hanya menjelaskan mengenai proses baca tulis file CSV secara sederhana.com. dengan syarat tidak menghilangkan. Facebook achmatim dan Twitter achmatim. 2005). Jakarta (S1.

Sign up to vote on this title
UsefulNot useful