PHP マニュアル
前のページ |  | 次のページ

# fpassthru

(PHP 3, PHP 4, PHP 5)

fpassthru -- ファイルポインタ上に残っているすべてのデータを出力する

## 説明

int fpassthru ( resource handle )

与えられたファイルポインタを EOF まで読み、結果を標準出力に書き出します。

エラーが起こった場合、fpassthru() は `FALSE` を返します。 それ以外の場合、fpassthru() は handle から読み込んだ文字の数を返し、出力へ渡します。

ファイルポインタは、有効なファイルポインタである必要があり、 fopen() または fsockopen() で正常にオープンされた （そしてまだ fclose() でクローズされていない） ファイルを指している必要があります。

ファイルに既にデータを書き終えている場合で ファイルポインタをファイルの先頭にリセットするには rewind() をコールする必要があります。

ファイルを更新したり特定のオフセットを探すのではなく 内容を出力バッファにダンプしたいだけの場合、 readfile() を使用することが可能です。 この場合、fopen() コールは必要ありません。

> 注意: fpassthru() を Windows システムのバイナリファイルで 使用する場合、fopen() をコールする際に モードに b を追加してバイナリモードでファイルを オープンするようにしてください。

例 1. バイナリファイルに対する fpassthru() の使用例

`<?php // バイナリモードでファイルをオープンする $name = './img/ok.png'; $fp = fopen($name, 'rb'); // 正しいヘッダを送出する header("Content-Type: image/png"); header("Content-Length: " . filesize($name)); // 画像をダンプしスクリプトを終了する fpassthru($fp); exit; ?>`

readfile(), fopen(), popen(), fsockopen() も参照ください。

前のページ | ホーム | 次のページ
fopen | 上に戻る | fputcsv