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('data.txt','rb');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函數讀取檔案中的一行,讀取之前要判斷是否已經到達最後一行,如果達到最後一行,停止讀取。