fpassthru

编辑

(PHP 4, PHP 5, PHP 7)

fpassthru — 输出文件指针处的所有剩余数据

PHP中文网词条详解说明

fpassthru(file)

fpassthru() 函数输出文件指针处的所有剩余数据。

将给定的文件指针从当前的位置读取到 EOF 并把结果写到输出缓冲区。

如果已经向文件写入数据,就必须调用 rewind() 来将文件指针指向文件头。

如果既不修改文件也不在特定位置检索,只想将文件的内容下载到输出缓冲区,应该使用 readfile(),这样可以省去 fopen() 调用。

PHP中文网词条详解参数

参数描述
file必需。规定要读取的打开文件或资源


PHP中文网词条详解返回值

如果发生错误, fpassthru() 返回 FALSE。否则 fpassthru() 返回从 handle 读取并传递到输出的字符数目。

PHP中文网词条详解范例

Example #1 fpassthru()例子

在相同目录下创建一个test.txt文件,在里面输入如下内容:

There are three lines in this file. 
This is the last line.

使用fpassthru() 函数输出文件第二行数据。

<?php
$file = fopen("test.txt","r");
// 读取第一行
fgets($file);
// 把文件的其余部分发送到输出缓存
echo fpassthru($file);
fclose($file);
?>

以上例程会输出:

This is the last line.22

注:22 指示被传递的字符数。

PHP中文网词条详解注释

当在 Windows 系统中将 fpassthru() 用于二进制文件,要确保在用 fopen() 打开文件时在 mode 中附加了 b 来将文件以二进制方式打开。

鼓励在处理二进制文件时使用 b 标志,即使系统并不需要,这样可以使脚本的移植性更好。

PHP中文网词条详解参见

  • readfile() - 输出文件

  • fopen() - 打开文件或者 URL

  • popen() - 打开进程文件指针

  • fsockopen() - 打开一个网络连接或者一个Unix套接字连接

参考资料
词条标签:
fpassthru