stream_get_line

(PHP 5, PHP 7, PHP 8)

stream_get_line從資源流里讀取一行直到給定的定界符

說明

stream_get_line(resource $stream, int $length, string $ending = ""): string|false

從給定的資源流里讀取一行。

當(dāng)讀取到 length 個(gè)字節(jié)數(shù)就結(jié)束,或者當(dāng)在讀取的非空字符串中發(fā)現(xiàn) ending包含到返回值里)也結(jié)束,又或者遇到了 EOF 也結(jié)束(總之以上條件中哪個(gè)先出現(xiàn)就以哪個(gè)為準(zhǔn))。

這個(gè)函數(shù)與 fgets() 幾乎是相同的,唯一的區(qū)別是在這個(gè)函數(shù)里面允許指定行尾的定界符,而不是使用標(biāo)準(zhǔn)的 \n, \r 還有 \r\n ,并且返回值中包含定界符。(翻譯注:也可以把 \n 等作為定界符傳入 ending

參數(shù)

stream

一個(gè)有效的文件句柄。

length

需要從句柄中讀取的最大字節(jié)數(shù)。不支持負(fù)值。 0 表示默認(rèn)的套接字塊大小(socket chunk size),即 8192 字節(jié)。

ending

可選參數(shù),字符串定界符。

返回值

返回一個(gè)字符串,該字符串的內(nèi)容根據(jù) length 字節(jié)數(shù)從 stream 里讀取, 或者在失敗時(shí)返回 false。

參見

  • fread() - 讀取文件(可安全用于二進(jìn)制文件)
  • fgets() - 從文件指針中讀取一行
  • fgetc() - 從文件指針中讀取字符