Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php怎么一行一行的读取文件?

php怎么一行一行的读取文件?

怪我咯
怪我咯asal
2017-07-11 09:34:2714479semak imbas

在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);

 

Atas ialah kandungan terperinci php怎么一行一行的读取文件?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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