Fungsi fgetcsv() PHP
Definisi dan penggunaan
Fungsi fgetcsv() membaca dan mengurai bidang CSV dari penanda pengecekan berkas.
Dengan fgets() Dengan demikian, berbeda dengan fgetcsv() mengurai baris yang diimpor dan mencari bidang format CSV, kemudian mengembalikan sebuah array yang mengandung bidang-bidang ini.
fgetcsv() mengembalikan FALSE saat terjadi kesalahan, termasuk saat mencapai akhir berkas.
Komen:Dari PHP 4.3.5, operasi fgetcsv() adalah selamat untuk biner.
Sintaks
fgetcsv(file,length,separator,enclosure)
Parameter | Deskripsi |
---|---|
file | Diperlukan. Menentukan berkas yang akan dicek. |
length |
Pilihan. Menentukan panjang maksimal baris. Harus lebih besar daripada baris terpanjang di dalam berkas CVS. Parameter ini adalah pilihan dalam PHP 5. Diperlukan sebelum PHP 5. Jika parameter itu diabaikan (diatur 0 dalam versi PHP 5.0.4 dan seterusnya), panjangnya tidak mempunyai batasan, tetapi mungkin mempengaruhi efisiensi eksekusi. |
separator | Pilihan. Tetapkan penanda pemisah medan (hanya diizinkan satu aksara), nilai baku adalah tanda koma. |
enclosure |
Pilihan. Tetapkan penyangga medan (hanya diizinkan satu aksara), nilai baku adalah petanda kutip ganda. Parameter ini ditambahkan dalam PHP 4.3.0. |
Pesan dan Komen
Komen:Baris kosong dalam fail CSV akan kembali sebagai array yang mengandungi satu medan null, tidak dianggap kesalahan.
Komen:Fungsi ini adalah sensitif kepada pengaturan wilayah. Misalnya, jika diatur LANG menjadi en_US.UTF-8, fail dengan pengkodean satuan bit akan muncul kesalahan bacaan.
Komen:Jika terjadi PHP yang tidak dapat mengenal tanda tamat baris fail Macintosh saat membaca fail, boleh aktifkan pilihan konfigurasi run-time auto_detect_line_endings.
Contoh
Contoh 1
<?php $file = fopen("contacts.csv","r"); print_r(fgetcsv($file)); fclose($file); ?>
Fail CSV:
George, John, Thomas, USA James, Adrew, Martin, USA
Output seperti:
Array ( [0] => George [1] => John [2] => Thomas [3] => USA )
Contoh 2
<?php $file = fopen("contacts.csv","r"); while(! feof($file)) { print_r(fgetcsv($file)); } fclose($file); ?>
Fail CSV:
George, John, Thomas, USA James, Adrew, Martin, USA
Output seperti:
Array ( [0] => George [1] => John [2] => Thomas [3] => USA Array ( [0] => James [1] => Adrew [2] => Martin [3] => USA )