Cara Menghuraikan Fail CSV Menggunakan PHP

Cara Menghuraikan Fail Csv Menggunakan Php



CSV fail mengandungi nilai dipisahkan koma dan merupakan format pengendalian data yang popular dan mantap digunakan untuk menyimpan data dalam bentuk jadual. Fail ini boleh dibuat dengan mudah oleh MS Excel, OpenOffice dan Helaian Google. Menghuraikan CSV fail sedang membaca fail baris demi baris dan memisahkan baris kepada nilai tatasusunan.

Dalam panduan ini, kami akan menerangkan bagaimana anda boleh menghuraikan a CSV fail menggunakan PHP.







Menghuraikan Fail CSV Menggunakan PHP

Kaedah terbina dalam PHP yang menghuraikan fail CSV ialah fgetcsv() dan ia membaca baris daripada fail CSV dan menghuraikannya ke dalam tatasusunan.



Sintaks menggunakan fgetcsv() fungsi dalam PHP adalah seperti berikut:



fgetcsv ( '.csv' , panjang , ',' )

Fungsi ini menerima tiga parameter, nama fail, panjang parameter pilihan bagi baris terpanjang, dan kemudian pembatas medan parameter pilihan lain. Pembatas medan lalai ialah koma dengan petikan berganda sebagai kepungan.





Gunakan Fungsi fgetcsv() untuk Menghuraikan Fail CSV dalam PHP

Berikut ialah cara anda boleh menggunakan fgetcsv() fungsi untuk menghuraikan fail CSV dalam PHP:

Langkah 1 : Mula-mula, buka fail CSV menggunakan fopen() fungsi. Di sini mod r digunakan untuk membuka fail untuk membaca dan $penangan ialah pemegang untuk memegang data daripada fail:



$penangan = fopen ( 'nama fail.csv' , 'r' ) ;

Langkah 2 : Selepas itu, anda boleh menggunakan gelung sementara untuk menghuraikan setiap satu CSV baris secara berasingan, gelung akan berterusan sehingga akhir fail:

sementara ( ( $data = fgetcsv ( $penangan , 1000 , ',' ) ) !== SALAH )

{

// Baca data fail CSV

}

Langkah 3 : Setelah fail dibaca, anda perlu menutupnya menggunakan fungsi fclose() dengan menghantar pemegang sebagai satu-satunya hujah.

tutup ( $penangan ) ;

Berikut ialah kod lengkap dalam PHP yang mengikut langkah di atas dan membolehkan anda membuka fail CSV dalam mod baca sahaja, jika fail ditemui, jika tidak, ia akan kembali salah :



$penangan = fopen ( 'data.csv' , 'r' ) ;

sementara ( ( $baris = fgetcsv ( $penangan ) ) !== salah ) {

var_dump ( $baris ) ;

}

tutup ( $penangan ) ;

?>

Kod di atas mula-mula membuka fail 'data.csv' dalam mod baca menggunakan fungsi fopen() dan menyerahkan pemegang fail kepada $handle pembolehubah. Selepas itu, ia membaca setiap baris fail menggunakan gelung sementara dan fungsi fgetcsv(). Kod menggunakan !== perbandingan palsu untuk memastikan bacaan sehingga akhir fail dicapai.

Pengeluaran

Tukar Fail CSV kepada Tatasusunan Berbilang Dimensi dalam PHP

Anda juga boleh menghuraikan a CSV fail dengan menukarnya kepada tatasusunan berbilang dimensi supaya data harus dibaca dengan mudah di dalam fail. Kod berikut akan membantu anda mengekstrak data daripada fail CSV dengan cara yang lebih teratur.



$nama fail = 'data.csv' ;

$nested_array = [ ] ;

jika ( ( $penangan = fopen ( ' {$nama fail} ' , 'r' ) ) !== SALAH )

{

sementara ( ( $data = fgetcsv ( $penangan , 1000 , ',' ) ) !== SALAH )
{
$nested_array [ ] = $data ;
}
tutup ( $penangan ) ;


}

bergema '' ;

var_dump ( $nested_array ) ;

bergema '' ;

Untuk membuat data dalam format yang boleh dibaca, kod di atas menggunakan fungsi yang dipanggil var_dump() yang memformat dan mengeluarkan data secara berstruktur dalam teg pra HTML.

Pengeluaran

Berikut adalah cara lain untuk membuka CSV fail dalam PHP dengan cara yang lebih disesuaikan. Kod yang diberikan di bawah akan memaparkan data setiap baris. Pertama, kami membuka fail menggunakan fungsi fopen(). . Kemudian gunakan pemegang untuk meletakkan setiap baris fail di dalamnya dan gunakan gelung while untuk membaca keseluruhannya CSV fail sehingga penunjuk sampai ke penghujung fail. Pada akhirnya, kami menutup fail:



$baris = 1 ;

jika ( ( $penangan = fopen ( 'data.csv' , 'r' ) ) !== SALAH ) {

sementara ( ( $data = fgetcsv ( $penangan , 1000 , ',' ) ) !== SALAH ) {

$nombor = kira ( $data ) ;

bergema '

$nombor bidang dalam barisan $baris :

\n '
;

$baris ++;

untuk ( $c = 0 ; $c < $nombor ; $c ++ ) {

bergema $data [ $c ] . '
\n '
;

}

}

tutup ( $penangan ) ;

}

?>

Pengeluaran

Pokoknya

Dalam PHP , kita boleh membuka fail menggunakan fopen() fungsi, baca fail baris demi baris menggunakan fgetcsv() fungsi, dan tutup fail menggunakan fclose() fungsi. Proses ini boleh diulang untuk setiap baris dalam CSV fail, membolehkan anda membaca dan memanipulasi data jadual dalam PHP dengan mudah.