PHP fpassthru() function

Paglilinaw at Paggamit

Ang output ng fpassthru() function ay ang lahat ng natitirang data na nasa pointer ng file.

Ang function na ito ay magbasa ng binigay na pointer ng file mula sa kasalukuyang posisyon hanggang sa EOF, at ililipat ang resulta sa output buffer.

Pangunahing Salita

fpassthru(file)
Parameter Paglalarawan
file Mandahil. Tinutukoy ang ibukas na file o resource na dapat basahin.

Paliwanag

Kung mayroong error, ang fpassthru() ay ibabalik na false. Sa kabilang banda, ang fpassthru() ay ibabalik mula sa file basa at ilipat sa output na bilang ng mga character.

Ang pointer ng file ay dapat magiging tapat, at dapat na nagsasalay sa isang file na fopen() Oo naka buksan ang fsockopen() (ngunit hindi pa napapalitan) fclose() 关闭)的文件。

提示和注释

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

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

注释:当在 Windows 系统中将 fpassthru() 用于二进制文件时,要确保在用 fopen() 打开文件时在 mode 中附加了 b 来将文件以二进制方式打开。鼓励在处理二进制文件时使用 b 标志,即使系统并不需要,这样可以使脚本的移植性更好。

实例

例子 1

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

输出:

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

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

例子 2

转储 www 服务器的 index 页:

<?php
$file = fopen("http://www.example.com","r");
fpassthru($file);
?>