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

# file

(PHP 3, PHP 4 , PHP 5)

file -- Читает содержимое файла и помещает его в массив

## Описание

array file ( string filename [, int use_include_path [, resource context]] )

Данная функция идентична функций readfile() с той разницей, что file() возвращает содержимое прочитанного файла в виде массива. Каждый элемент возвращенного массива содержит соответствующую строку с символами конца строки. В случае ошибки, функция file() возвращает `FALSE`.

Вы можете указать необязательный параметр use_include_path, равный "1", если хотите, чтобы поиск файла также производился в каталогах, указанных директивой include_path.

`<?php // Получить содержимое файла в виде массива. В данном примере мы используем // обращение по протоколу HTTP для получения HTML-кода с удаленного сервера. $lines = file('http://www.example.com/'); // Осуществим проход массива и выведем номера строк и их содержимое в виде HTML-кода. foreach ($lines as $line_num => $line) { echo "Строка #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n"; } // Второй пример. Получим содержание web-страницы в виде одной строки. // См.также описание функции file_get_contents(). $html = implode('', file ('http://www.example.com/')); ?>`

> Подсказка: Для этой функции вы можете использовать URL в качестве имени файла, если была включена опция "fopen wrappers". Смотрите более подробную информацию об определении имени файла в описании функции fopen(), а также список поддерживаемых протоколов URL в Прил. L.

> Замечание: Каждая строка в полученном массиве будет завершаться символами конца строки, поэтому, если вам будет нужно избавиться от этих символов, вы будете должны использовать функцию rtrim().

> Замечание: Если у вас возникают проблемы с распознаванием PHP окончания строк при чтении файлов на Macintosh-совместимом компьютере или при чтении файлов, созданных на Macintosh-совместимом компьютере, необходимо включить опцию auto_detect_line_endings.

> Замечание: Начиная с PHP 4.3.0, вы можете использовать функцию file_get_contents() для получения содержимого файла в виде строки.

> Начиная с PHP 4.3.0, функция file() корректно обрабатывает двоичные данные.

> Замечание: Поддержка контекста была добавлена в PHP 5.0.0.

Внимание
При использовании SSL, Microsoft IIS будет нарушать протокол, закрывая соединение без отправки индикатора close_notify. PHP сообщит об этом как о "SSL: Fatal Protocol Error" в момент, когда вы достигните конца данных. Чтобы обойти это, вы должны опустить ваш уровень error_reporting, чтобы исключить предупреждения (E_WARNING). PHP 4.3.7 и младше может определять глючный IIS-сервер, когда вы открываете поток используя обвёртку https://, и не отобразит это предупреждение. Если вы используете fsockopen() для создания ssl:// сокета, вы сами отвечаете за определение и подавление этого предупреждения.

См.также описания функций readfile(), fopen(), fsockopen(), popen(), file_get_contents() и include().

Пред. | Начало | След.
file_put_contents | Уровень выше | fileatime