readfile()

Выводит файл (PHP 3, PHP 4, PHP 5)

Описание:

int readfile ( string filename [, bool use_include_path [, resource context]] )

Читает файл и записывает его в буфер вывода.

Параметры:

filename - имя читаемого файла
use_include_path - необязательный параметр; если TRUE, поиск файла будет происходить также в include_path (директива php.ini).
context - потоковый ресурс среды окружения.

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

Для этой функции вы можете использовать URL в качестве имени файла, если была включена опция "fopen wrappers".

Пример. Принудительный старт скачивания файла

<?php
$file = 'monkey.gif';

if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
?>

В результате работы вышеприведенного кода появится нечто подобное: