Pengenalan kepada fungsi PHP—fgets(): Membaca baris daripada fail

WBOY
Lepaskan: 2023-07-25 14:56:01
asal
2069 orang telah melayarinya

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:

  • $handle: sumber fail, sumber dibuka dan dikembalikan oleh fungsi fopen().
  • $length: Parameter pilihan, menyatakan bilangan maksimum bait untuk dibaca daripada fail. Lalai ialah 1024 bait.

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.
Salin selepas log masuk
Salin selepas log masuk

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 "无法打开文件";
}
Salin selepas log masuk

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.
Salin selepas log masuk
Salin selepas log masuk

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 "无法打开文件";
}
Salin selepas log masuk

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 
Salin selepas log masuk

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);
Salin selepas log masuk

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
)
Salin selepas log masuk

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!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!