首页 » 建站技术 » PHP 技术 » 浏览内容

fgets — 从文件指针中读取一行


2005-05-24 11:49:26 8,222 0 发表评论 字体: 作者:C.K.

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

fgets

(PHP 3, PHP 4 )

fgets — 从文件指针中读取一行

说明

string fgets ( int handle [, int length])

handle 指向的文件中读取一行并返回长度最多为 length – 1 字节的字符串。碰到换行符(包括在返回值中)、EOF 或者已经读取了 length – 1 字节后停止(看先碰到那一种情况)。如果没有指定 length,则默认为 1K,或者说 1024 字节。

出错时返回 FALSE

通常的缺陷:

习惯了 C 语言中 fgets() 语法的人应该注意到 EOF 是怎样被返回的。

文件指针必须有效,并且是通过 fopen()fsockopen() 成功打开的。

以下是一个简单例子:

例子 1. 逐行读取文件

$handle = fopen ("/tmp/inputfile.txt", "r");
  • while (!feof ($handle)) {
  •    $buffer = fgets($fd, 4096);
  •    echo $buffer;
  • }
  • fclose ($handle);
  • ?>
  • 注: length 参数从 PHP 4.2.0 起成为可选项,如果忽略,则行的长度被假定为 1024。从 PHP 4.3 开始,忽略掉 length 将继续从流中读取数据直到行结束。如果文件中的大多数行都大于 8KB,则在脚本中指定最大行的长度在利用资源上更为有效。

    注: 从 PHP 4.3 开始本函数可以安全用于二进制文件。早期的版本则不行。

    注: 如果碰到 PHP 在读取文件时不能识别 Macintosh 文件格式,可以激活 auto_detect_line_endings 的运行时配置选项。

    参见 fread()fgetc()stream_get_line()fopen()popen()fsockopen()socket_set_timeout()

    网站统计 Statistics

    • 创建时间: 2005年1月3日 距今5062 天
    • 日志总数: 2461
    • 评论总数: 630
    • 标签总数: 654
    • 链接总数: 273
    • 最后更新: 2018-8-31 17:57:04
    • 您是本站第 14144287 位访客

    广告区 Guǎng Gào