Открытие файлов

Файл представляет собой последовательность байтов, хранящуюся на каком-либо физическом носителе информации. Каждый файл имеет абсолютный путь, по которому определяется его местонахождение. В качестве разделителя пути в Windows может использоваться как прямой (/), так и обратный (\) слеш. В других операционных системах используется только прямой слеш.

Открытие файлов в файловой системе сервера производится при помощи функции fopen:

int fopen(string filename, string mode [, int use_include_path])

Первый аргумент filename - имя файла или абсолютный путь к нему. Если абсолютный путь не указывается, то файл должен находится в текущем каталоге.

Второй аргумент mode говорит о том, для каких действий открывается файл и может принимать следующие значения:
(r) - Открыть файл только для чтения; после открытия указатель файла устанавливается в начало файла
(r+) - Открыть файл для чтения и записи; после открытия указатель файла устанавливается в начало файла
(w) - Создать новый пустой файл только для записи; если файл с таким именем уже есть вся информация в нем уничтожается
(w+) - Создать новый пустой файл для чтения записи; если файл с таким именем уже есть вся информация в нем уничтожается
(a) - Открыть файл для дозаписи; данные будут записываться в конец файла
(a+) - Открыть файл для дозаписи и чтения данных; данные будут записываться в конец файла
(b) - Флаг, указывающий на работу (чтение и запись) с двоичным файлом; указывается только в Windows

Третий необязательный аргумент use_include_path определяет должны ли искаться файлы в каталоге include_path. (Параметр include_path устанавливается в файле php.ini).

В случае удачного открытия файла, функция fopen возвращает дескриптор файла, в случае неудачи - false. Дескриптор файла представляет собой указатель на открытый файл, который используется операционной системой для поддержки операций с этим файлом. Возвращенный функцией дескриптор файла необходимо затем указывать во всех функциях, которые в дальнейшем будут работать с этим файлом.

Код, приведенный ниже, открывает файл C:/WWW/HTML/file.txt для чтения:

<?
$file = fopen("c:/www/html/file.txt","r");
if(!file)
{
echo("Ошибка открытия файла");
}
?>

Открытие двоичного файла, к примеру, рисунка происходит таким же образом, только с флагом b:

<?
$file = fopen("c:/www/html/river.jpg","rb");
if(!file)
{
echo("Ошибка открытия файла");
}
?>

<<< - Предыдущая | Cледующая ->>>