首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

fpassthru

(PHP 4, PHP 5, PHP 7)

fpassthru - 输出文件指针上的所有剩余数据

描述

代码语言:javascript
复制
int fpassthru ( resource $handle )

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

如果您已经将文件写入文件,则可能需要调用rewind()将文件指针重置为文件的开头。

如果您只是想将文件的内容转储到输出缓冲区,而不先修改或寻求特定的偏移量,则可能需要使用readfile(),这会节省您的fopen()调用。

参数

handle

文件指针必须是有效的,并且必须指向由fopen()或fsockopen()(并且尚未由fclose()关闭)成功打开的文件。

返回值

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

例子

Example#1在二进制文件中使用fpassthru()

代码语言:javascript
复制
<?php

// open the file in a binary mode
$name = './img/ok.png';
$fp = fopen($name, 'rb');

// send the right headers
header("Content-Type: image/png");
header("Content-Length: " . filesize($name));

// dump the picture and stop the script
fpassthru($fp);
exit;

?>

注意

注意:在Windows系统上的二进制文件上使用fpassthru()时,应确保以二进制模式打开文件,方法是在调用fopen()时使用的模式附加b。鼓励在处理二进制文件时使用b标志,即使您的系统不需要它,以便您的脚本将更具可移植性。

扫码关注腾讯云开发者

领取腾讯云代金券