在PHP中可以使用PHP內建函數fgets() 函數,它是從檔案指標讀取一行。
它的語法如下:
fgets(file,length)
參數 | 描述 |
---|---|
file | 必需。規定要讀取的文件。 |
length | 可選。規定要讀取的位元組數。預設是 1024 位元組。 |
從 file 指向的檔案中讀取一行並回傳長度最多為 length - 1 位元組的字串。碰到換行符號(包括在回傳值)、EOF 或已經讀取了 length - 1 位元組後停止(要看先碰到那一種情況)。如果沒有指定 length,則預設為 1K,或說 1024 位元組。
若失敗,則傳回 false。
註解:length 參數從 PHP 4.2.0 起成為可選項,如果忽略,則行的長度被假定為 1024 位元組。從 PHP 4.3 開始,忽略掉 length將繼續從流中讀取資料直到行結束。如果檔案中的大多數行都大於 8 KB,則在腳本中指定最大行的長度在利用資源上更為有效。
註解:從 PHP 4.3 開始本函數可以安全地用於二進位檔案。早期的版本則不行。
註解:如果碰到 PHP 在讀取檔案時無法辨識 Macintosh 檔案的行結束符,可以啟動 auto_detect_line_endings 執行時期設定選項。
下面是一個下例子,程式碼如下
$filepath = $_SERVER['DOCUMENT_ROOT']; $filename = $filepath."/resource/dat/users.txt"; $handle = fopen ($filename, "r"); //$contents = fread ($handle, filesize ($filename)); //echo $contents; while (!feof ($handle)) { $buffer = fgets($handle, 4096); $username = trim($buffer); echo $username } fclose ($handle);
以上是php怎麼一行一行的讀取檔?的詳細內容。更多資訊請關注PHP中文網其他相關文章!