
Здравствуйте, уважаемые читатели!
При разработке веб-ресурсов обойтись без использования различных файлов довольно сложно. Это могут быть, как текстовые документы, так и различные изображения и анимации. Они могут храниться в основной папке сайта, на различных серверах и даже в корневой папке ПК.
Для того, чтобы обратиться к заданному файлу, в PHP существует специальная функция «fopen( )», которая, в свою очередь, может иметь различные режимы доступа к информации. Интересной особенностью данной функции является то, что при отсутствии указанного файла, она автоматически создает его, что также часто используется в практике сайтостроения.
fopen(file_name, mode)
В данном случае, в скобках указывается вначале имя необходимого файла, а затем необходимый режим его открытия.
На практике использование данной функции выглядит примерно так:
$fp = fopen("/home/nikmurashkin/file.txt", "r");
?>
Где:
- file.txt — имя файла
- /home/nikmurashkin/... — путь к файлу
- r — режим доступа к файлу
Как видно из примера, для того, чтобы функция смогла открыть или создать нужный файл, необходимо указать не только имя файла, но и путь его расположения. В этом случае может быть указано лишь имя файла, если он находится в той же папке, что и основной PHP-сценарий. Если же файл располагается в папке, расположенной на несколько уровней от текущей ("files/data/info.txt"), необходимо также указать данный путь. Указание абсолютного пути к файлу ("C:\\Home_server\\files\\info.txt") вполне допустимо, но необязательно. В этом случае, как вы уже заметили, наклонный разделитель удваивается, что обеспечивает более корректную работу функции.
Режимы доступа
Для функции fopen( ) существует четыре основные пары режимов доступа к файлам, которые определяют возможности их использования:
- r (режим чтения) и r+ (режим чтения и записи) — в обоих случаях позиция курсора в начале файла
- w (режим записи данных) и w+ (режим записи данных плюс чтение) — для обоих режимом при нахождении файла функция обнуляет его, а при отсутствии создает
- a (режим записи без обнуления файла) и a+ (режим записи и чтения без обнуления файла) — в данном случае позиция курсора в конце файла
- x (создание файла для записи) и x+ (создание файла для записи и чтения) — если файл уже существует, функция выдает ошибку
При использовании данных функций следует уделить внимание типу вашей операционной системы и версии PHP — от этого может существенно зависеть форма указания пути к файлу.
Читайте также о принципах работы с циклом PHP «foreach».