PHP fpassthru() 函数
实例
从文件中的当前位置读取-直到EOF,然后将剩余数据写入输出缓冲区:
$file = fopen("test.txt","r");
// Read first line
fgets($file);
// Read from the current position in file - until EOF, and then write the result to the output buffer
echo fpassthru($file);
fclose($file);
?>
定义和用法
fpassthru() 函数输出文件指针处的所有剩余数据。
该函数将给定的文件指针从当前的位置读取到 EOF,并把结果写到输出缓冲区。
注释: 在 Windows 上对二进制文件使用 fpassthru() 时,请记住以二进制模式打开文件。
提示: 如果您已经写入文件,则调用 rewind() 将文件指针设置为文件的开头。
提示: 要将文件的内容转储到输出缓冲区,请改用 readfile() 函数。
语法
参数值
参数 | 描述 |
---|---|
file | 必需。规定要读取的打开文件或资源。 |
说明
如果发生错误, fpassthru() 返回 false。否则 fpassthru() 返回从 file 读取并传递到输出的字符数目。
文件指针必须有效,并且必须指向一个由 fopen() 或 fsockopen() 成功打开(但还没有被 fclose() 关闭)的文件。
提示和注释
提示:如果已经向文件写入数据,就必须调用 rewind() 来将文件指针指向文件头。
提示:如果既不修改文件也不在特定位置检索,只想将文件的内容下载到输出缓冲区,应该使用 readfile(),这样可以省去 fopen() 调用。
注释:当在 Windows 系统中将 fpassthru() 用于二进制文件时,要确保在用 fopen() 打开文件时在 mode 中附加了 b 来将文件以二进制方式打开。鼓励在处理二进制文件时使用 b 标志,即使系统并不需要,这样可以使脚本的移植性更好。
技术细节
返回值: | 从文件中读取并通过输出的字符数,失败时为 FALSE |
---|---|
PHP 版本: | 4.0+ |