Fungsi fgets() dalam PHP digunakan untuk membaca kandungan fail baris demi baris
Dalam PHP, kita selalunya perlu membaca kandungan fail. Apabila kandungan fail adalah besar, membaca keseluruhan fail ke dalam memori pada satu masa boleh menyebabkan masalah limpahan memori. Untuk mengelakkan ini, kita boleh memproses kandungan fail dengan membaca fail baris demi baris.
Dalam PHP, fungsi fgets() ialah fungsi yang digunakan untuk membaca kandungan fail baris demi baris. Sintaksnya adalah seperti berikut:
string fgets ( resource $handle [, int $length ] )
Antaranya, $handle mewakili penuding fail, iaitu objek sumber yang dikembalikan selepas membuka fail, $length mewakili bilangan bait untuk dibaca, dan lalai ialah 1024.
Seterusnya, saya akan menunjukkan penggunaan fungsi fgets() melalui contoh kod tertentu.
Pertama, kami menyediakan fail teks bernama "example.txt" dengan kandungan berikut:
Hello World! This is an example file. I am learning PHP.
Seterusnya, kami menggunakan kod PHP untuk membuka fail dan membaca kandungan fail baris demi baris:
<?php $file = fopen("example.txt", "r"); if ($file) { while (($line = fgets($file)) !== false) { echo $line; } fclose($file); } else { echo "文件打开失败!"; } ?>
Dalam kod di atas , kami mula-mula menggunakan fungsi fopen() untuk membuka fail dan menyimpan penuding fail yang dikembalikan ke pembolehubah $file. Parameter pertama "example.txt" mewakili nama fail yang akan dibuka dan parameter kedua "r" mewakili membuka fail dalam mod baca sahaja.
Seterusnya, kami menggunakan fungsi fgets() untuk membaca kandungan fail baris demi baris melalui gelung sementara dan menyimpannya ke pembolehubah $line. Apabila fungsi fgets() kembali palsu, ini bermakna penghujung fail telah dicapai dan gelung berakhir.
Akhir sekali, kami menggunakan fungsi fclose() untuk menutup fail.
Jalankan kod di atas, kita dapat melihat output berikut:
Hello World! This is an example file. I am learning PHP.
Ini adalah contoh membaca kandungan fail baris demi baris melalui fungsi fgets().
Perlu diambil perhatian bahawa fungsi fgets() hanya boleh membaca satu baris kandungan pada satu masa. Jika kandungan fail terlalu panjang, anda mungkin perlu memanggil fungsi fgets() beberapa kali untuk membaca kandungan fail yang lengkap.
Selain itu, anda boleh mengawal bilangan bait yang dibaca setiap kali dengan menentukan parameter $length. Jika parameter $length tidak ditentukan, lalai ialah 1024 bait.
Untuk meringkaskan, anda boleh membaca fail dengan mudah baris demi baris melalui fungsi fgets(). Kaedah membaca ini boleh mengelakkan masalah limpahan memori yang disebabkan oleh membaca keseluruhan fail sekaligus, dan sesuai untuk memproses fail besar. Saya harap kandungan artikel ini akan membantu anda memahami fungsi fgets() dalam PHP.
Atas ialah kandungan terperinci Fungsi fgets() dalam PHP digunakan untuk membaca kandungan fail baris demi baris. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!