readfile - Выводит файл
Вернуться к: Файловая система
readfile
(PHP 4, PHP 5, PHP 7)
readfile — Выводит файл
Описание
$filename
[, bool $use_include_path
= false
[, resource $context
]] )Читает файл и записывает его в буфер вывода.
Список параметров
-
filename
-
Имя читаемого файла.
-
use_include_path
-
Вы можете установить в
TRUE
необязательный второй аргумент, если вы также хотите попытаться найти файл в include_path. -
context
-
Ресурс (resource) с контекстом потока.
Возвращаемые значения
Возвращает количество прочитанных из файла байт. В случае возникновения
ошибки вернёт FALSE
, и (если только функция не была вызвана как
@readfile()) выведет сообщение об ошибке.
Примеры
Пример #1 Форсирование скачки с помощью readfile()
<?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('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile($file);
exit;
}
?>
Результатом выполнения данного примера будет что-то подобное:
Примечания
Замечание:
readfile() сама по себе не приводит к каким-либо проблемам с памятью, даже при отправке больших файлов. При возникновении ошибки превышения памяти убедитесь, что буферизация вывода отключена с помощью ob_get_level().
Для этой функции вы можете использовать URL в качестве имени файла, если была включена опция fopen wrappers. Смотрите более подробную информацию об определении имени файла в описании функции fopen(). Смотрите также список поддерживаемых оберток URL, их возможности, замечания по использованию и список предопределенных констант в Поддерживаемые протоколы и обработчики (wrappers).
Замечание: Поддержка контекста была добавлена в PHP 5.0.0. Для описания контекстов смотрите раздел Потоки.
Смотрите также
- fpassthru() - Выводит все оставшиеся данные из файлового указателя
- file() - Читает содержимое файла и помещает его в массив
- fopen() - Открывает файл или URL
- include - include
- require - require
- virtual() - Выполняет подзапрос Apache
- file_get_contents() - Читает содержимое файла в строку
- Поддерживаемые протоколы и обработчики (wrappers)
Вернуться к: Файловая система