Руководство по PHP
Пред. |  | След.

# fpassthru

(PHP 3, PHP 4, PHP 5)

fpassthru -- Выводит все оставшиеся данные из файлового указателя

## Описание

int fpassthru ( resource handle )

Читает указанный файловый указатель с текущей позиции до EOF (конца файла) и записывает результат в буфер вывода.

Если происходит ошибка, fpassthru() возвращает `FALSE`. В ином случае, fpassthru() возвращает количество символов, прочтнных из `handle` и переданных на вывод.

Указатель на файл должен быть корректным и указывать на файл, успешно открытый функциями fopen() или fsockopen().

Вам может понадобиться вызвать rewind() чтобы сбросить файловый указатель на начало файла, если вы уже записывали данные в файл.

Если вы хотите просто сбросить содержимое файла в буфер вывода, предварительно не модифицируя его и не начиная с определённого смещения, вы можете пожелать использовать readfile(), которая избавит вас от лишнего вызова fopen().

> Замечание: Во время использования fpassthru() на бинарном файле в сисиемах Windows, вы должны убедиться в том, что открыли файл в бинарном режиме при помощи добавления `b` к режиму открытия файла, использованному в fopen().

> Рекомендуется использовать флаг `b` при работе с бинарными файлам даже если ваша система этого не требует, чтобы обеспечить более высокую портируемость скриптов.

Пример 1. Использование fpassthru() с бинарными файлами

`<?php // открываем файл в бинарном режиме $name = ".\public\dev\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