PHP fpassthru() 函数
定义和用法
fpassthru() 函数输出文件指针处的所有剩余数据。
该函数将给定的文件指针从当前的位置读取到 EOF,并把结果写到输出缓冲区。
语法
fpassthru(file)
参数 | 描述 |
---|---|
file | 必需。规定要读取的打开文件或资源。 |
说明
如果发生错误, fpassthru() 返回 false。否则 fpassthru() 返回从 file 读取并传递到输出的字符数目。
文件指针必须有效,并且必须指向一个由 fopen() 或 fsockopen() 成功打开(但还没有被 fclose() )を閉じるファイル。
ヒントおよびコメント
ヒント:ファイルにデータを書き込んだ後は、以下を呼び出す必要があります rewind() を使用してファイルポインタをファイルの先頭に移動します。
ヒント:ファイルを修正せず、特定の場所で検索せずに、ファイルの内容をオプションキャッシュにダウンロードするだけの場合、以下を使用します readfile()、これにより fopen() 調用を省略できます。
コメント:Windows システムで fpassthru() をバイナリファイルに使用する場合、fopen() でファイルを開く際に mode に b を付加してファイルをバイナリモードで開くことを確認してください。b フラグを使用することを推奨します。システムが必要でない場合でも、スクリプトの移植性を向上させます。
例
例 1
<?php $file = fopen("test.txt","r"); // 第 1 行を読み取ります fgets($file); // ファイルの残りをオプションキャッシュに送信します echo fpassthru($file); fclose($file); ?>
出力:
このファイルには 3 行あります。 これは最後の行です。59
注:59 は、渡されるキャラクタ数を示します。
例 2
www サーバーの index ページをダンプ:
<?php $file = fopen("http://www.example.com","r"); fpassthru($file); ?>