Режимы работы с файлами онлайн урок.


В этом уроке рассмотрим режимы, которые доступны для работы с файлами.

Что такое файл? Это определенная область памяти на некотором носителе информации, например на жестком диске. Для удобства, можно себе представлять емкости с разной едой в холодильнике - судочки, консервы, упаковки. Каждая емкость подписана соответственно содержимому. Так и файлы имеют свое название. Оно состоит из двух составляющих - само название и расширение файла. Расширение отделяется точкой от самого названия и служит для того, чтоб отличать типы файлов друг от друга. Как и в примере с емкостями с едой мы можем отличить пластиковый судок от консервной банки.

В файлах можно сохранять разнообразную информацию, например в файле index.html можно сохранять исходный код веб-страницы.

Что такое режим работы с файлом? Это то, чем вы ограничены при работе с файлом, а именно: можете ли вы его редактировать или только открыть и просмотреть содержимое. Или вы просто хотели бы его создать.

Для работы с файлами в PHP существует функцияfopen($filename, $mode), в которую обязательно необходимо передать название $filename файла и режим $mode работы с ним (в качестве строковых значений). Эта функция возвращает специальный указатель на соответствующий файл в качестве типа resource. Этот указатель будет необходим при дальнейшей работе с этим файлом.

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

Рассмотрим основные режимы работы с файлами в PHP:

  • r открывает файл только для чтения и помещает маркер в начало файла. Это можно использовать, например, для получения всего содержимого файла. Изменять файл нельзя.

  • r+ открывает файл для чтения и записи. Это можно использовать, например, для получения всего содержимого файла и внесения изменений в него.

  • w открывает файл только для записи. Создает файл (если это возможно), если его не существует или очищает существующий файл. Маркер помещается в начало файла.

  • w+ открывает файл для чтения и записи. Создает файл, если его не существует или очищает существующий файл. Маркер помещается в начало файла.

  • a открывает файл только для записи и ставит маркер в конец файла. Создает файл, если его не существует.

  • a+ открывает файл для чтения и записи и ставит маркер в конец файла. Создает файл, если его не существует.


Рассмотрим несколько примеров:



В следующих уроках рассмотрим функции для чтения и записи в файлы, используя перечисленные режимы.