Функции PHP »»» Функции для работы с файловой системойfread (PHP 3, PHP 4, PHP 5) fread -- Бинарно-безопасное чтение файла Описаниеstring fread ( resource handle, int length )
fread() читает до
length байтов из файлового указателя
handle. Чтение останавливается при достижении
length байтов, EOF
(конца файла) или (для сетевых потоков) когда
пакет становится доступным, что бы не произошло первым.
<?php // получает содержимое файла в строку $filename = "/usr/local/something.txt"; $handle = fopen($filename, "r"); $contents = fread($handle, filesize($filename)); fclose($handle); ?>
|
Внимание |
На системах, которые различают бинарные и текстовые файлы
(к примеру Windows), файл должен быть открыт с использованием
буквы 'b' в параметре mode функции fopen().
|
<?php $filename = "c:\\files\\somepic.gif"; $handle = fopen($filename, "rb"); $contents = fread($handle, filesize($filename)); fclose($handle); ?>
|
Внимание |
При чтении из сетевых потоков или конвееров, таких как те, что
возвращаются при чтении
удаленных файлов или из
popen() и fsockopen(), чтение
остановится после того, как пакет станет доступным. Это означает, что
вы должны собирать данные вместе по кусочкам, как показано на примере
ниже.
|
<?php $handle = fopen("http://www.example.com/", "rb"); $contents = ''; while (!feof($handle)) { $contents .= fread($handle, 8192); } fclose($handle); ?>
|
Замечание:
Если вы просто хотите получить содержимое файла в виде строки,
используйте file_get_contents() в качестве
более предпочтительного метода, чем описанный выше.
См. также описания функций fwrite(), fopen(),
fsockopen(), popen(),
fgets(), fgetss(),
fscanf(), file() и
fpassthru().
|