Pengenalan fungsi PHP—fgets(): Membaca baris daripada fail
Dalam PHP, membaca fail adalah operasi yang sangat biasa. Fungsi fgets() boleh membantu kami membaca data daripada fail baris demi baris. Fungsi ini sangat berguna terutamanya apabila kita perlu memproses fail teks yang besar. Artikel ini akan memperkenalkan penggunaan fungsi fgets() dan menyediakan beberapa contoh kod untuk membantu pembaca lebih memahami fungsi dan penggunaan fungsi ini. Sintaks asas fungsi
fgets() adalah seperti berikut:
string fgets (resource $handle, int $length
Analisis parameter:
Contoh kod 1: Penggunaan asas
Andaikan kita mempunyai contoh fail teks.txt dengan kandungan berikut:
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Kami ingin membaca setiap baris di dalamnya dan memaparkannya pada halaman, kodnya adalah seperti berikut:
$handle = fopen("example.txt", "r"); if ($handle) { while (($line = fgets($handle)) !== false) { echo $line . "<br>"; } fclose($handle); } else { echo "无法打开文件"; }
Atur cara mula-mula menggunakan fungsi fopen() untuk membuka fail example.txt dan menyimpan sumber fail yang dikembalikan dalam pembolehubah $handle. Kemudian, dalam gelung sementara, gunakan fungsi fgets() untuk membaca satu baris pada satu masa, tetapkan ia kepada pembolehubah $line, dan kemudian keluarkannya ke halaman. Akhirnya, fail ditutup menggunakan fungsi fclose().
Laksanakan kod di atas, outputnya adalah seperti berikut:
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Contoh kod 2: Hadkan bilangan bait yang dibaca
Dalam sesetengah kes, kita mungkin hanya perlu membaca beberapa bait pertama dalam fail, atau hanya membaca Dapatkan a bilangan bait tetap setiap baris. Parameter kedua $length fungsi fgets() membolehkan kami mengehadkan bilangan bait yang dibaca. Sebagai contoh, kami hanya membaca 10 bait pertama setiap baris, dan kodnya adalah seperti berikut:
$handle = fopen("example.txt", "r"); if ($handle) { while (($line = fgets($handle, 10)) !== false) { echo $line . "<br>"; } fclose($handle); } else { echo "无法打开文件"; }
Kod ini menambah parameter kedua 10 pada panggilan fungsi fgets(), yang bermaksud bahawa hanya 10 bait dibaca setiap kali . Keputusan pelaksanaan adalah seperti berikut:
Lorem ipsu consectetu sed do eiu ut labore
Contoh kod 3: Baca dan proses data baris demi baris
Selain mengeluarkannya terus ke halaman, kami juga boleh memproses lebih lanjut data setiap baris. Contohnya, untuk mengira bilangan aksara dalam setiap baris dalam fail dan menyimpan hasilnya dalam tatasusunan, kodnya adalah seperti berikut:
$handle = fopen("example.txt", "r"); $result = []; if ($handle) { while (($line = fgets($handle)) !== false) { $lineLength = strlen($line); $result[] = $lineLength; } fclose($handle); } else { echo "无法打开文件"; } print_r($result);
Kod ini menggunakan fungsi strlen() untuk mengira bilangan aksara dalam setiap baris dalam setiap gelung dan menyimpan hasilnya dalam tatasusunan $result. Akhir sekali, gunakan fungsi print_r() untuk mengeluarkan kandungan tatasusunan. Keputusan pelaksanaan adalah seperti berikut: Fungsi
Array ( [0] => 28 [1] => 28 [2] => 30 [3] => 24 )
Summary
fgets() ialah fungsi yang sangat berguna yang boleh membantu kami membaca data baris demi baris daripada fail. Ia sangat mudah untuk digunakan dan sintaks asasnya mudah difahami. Kita boleh menggunakan fungsi ini untuk membaca setiap baris fail dan melakukan pemprosesan selanjutnya, seperti mengeluarkannya ke halaman, mengira bilangan aksara, dsb. Dengan menguasai dan menggunakan fungsi fgets() secara fleksibel, kami boleh memproses fail teks yang besar dengan lebih mudah.
Atas ialah kandungan terperinci Pengenalan kepada fungsi PHP—fgets(): Membaca baris daripada fail. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!