首頁 >後端開發 >php教程 >php 使用fgets()函數讀取檔案內容實例詳解

php 使用fgets()函數讀取檔案內容實例詳解

怪我咯
怪我咯原創
2017-07-11 09:40:042326瀏覽

php fgets()函數用於從檔案指標讀取一行,該函數可以結合feof函數來讀取檔案內容,本文章向大家分享php使用fgets()讀取/取得檔案內容的一個簡單實例(demo),需要的朋友可以參考一下。

先介紹一下php fgets()函數的語法

fgets(file,length)

參數詳解

file    必要。規定要讀取的文件。    

length    可選。規定要讀取的位元組數。預設是 1024 位元組。    

說明

從 file 指向的檔案中讀取一行並回傳長度最多為 length - 1 位元組的字串#。碰到換行符號(包括在回傳值)、EOF 或已經讀取了 length - 1 位元組後停止(要看先碰到那一種情況)。如果沒有指定 length,則預設為 1K,或說 1024 位元組。

若失敗,則傳回 false。

下面介紹一下php使用fgets()函數讀取檔案的原理。

fgets()函數用來讀取檔案中的一行,因此,我們可以一直呼叫fgets()函數來讀取檔案的全部內容,而且可以使用feof函數來判斷是否已經到達檔案最後一行,如果達到最後一行,停止呼叫fgets()函數。

fgets()函數讀取檔案的具體實例如下:

假設我們有一個檔案data.txt,裡面的內容如下:

a@example.com|Alice 
b@example.org|Bill 
c@example.com|Charlie 
c@example.com|China 
c@example.com|Phpcn

我們使用fgets()函數讀取該檔案裡面的內容,程式碼如下:

<?php
$fh = fopen(&#39;data.txt&#39;,&#39;rb&#39;);
if (! $fh) {
    print "Error opening people.txt: $php_errormsg";
} else {
    for ($line = fgets($fh); ! feof($fh); $line = fgets($fh)) {
        if ($line === false) {
            print "Error reading line: $php_errormsg";
        } else {
			echo $line."<br/>";
        }
    }
    if (! fclose($fh)) {
        print "Error closing people.txt: $php_errormsg";
    }
}
?>

先使用fopen函數開啟文件,fopen函數將傳回一個檔案指針,該檔案指標將會被fgets函數使用。然後使用fgets函數讀取檔案中的一行,讀取之前要判斷是否已經到達最後一行,如果達到最後一行,停止讀取。

以上是php 使用fgets()函數讀取檔案內容實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn