Работа с файлами разделяется на 3 этапа:
I. Открытие файла Для того чтобы открыть файл в среде PHP используется функция fopen(). Обязательными параметрами этой функции является имя файла и режим файла. $fp = fopen('counter.txt', 'r'); Согласно документации PHP выделяют следующие виды режимов файлов:
Примечание: в конце любой из строк может существовать еще один необязательный параметр: b или t. Если указан b, то файл открывается в режиме бинарного чтения/записи. Если же t, то для файла устанавливается режим трансляции перевода строки, т.е. он воспринимается как текстовый. Для демонстрации рассмотрим следующий сценарий: //Открывает файл в разных режимах II. Манипуляции с данными файла Записывать данные в файл при помощи PHP можно при помощи функции fwrite(). Это функция принимает 2 обязательных параметра и 1 необязательный. В качестве обязательных параметров выступает дескриптор файла и режим файла: <?php Для построчного считывания файла используют функцию fgets(). Функция принимает 2 обязательных параметра: $fp = fopen("counter.txt", "r"); // Открываем файл в режиме чтения Примечание: В данном примере значение 999 определяет количество символов, которые будут считываться до тех пор, пока указатель не достигнет конца файла (EOF). Для того, чтобы считать файл как единое целое, нужно использовать функцию readfile(), принимающая 1 обязательный параметр. Функция открывает файл, отображает его содержимое в окне браузера, а затем закрывает файл: echoreadfile("counter.txt"); Также можно использовать функцию fpassthru() которая принимает 1 обязательный параметр. Перед использованием этой функции необходимо открыть файл в режиме чтения. По окончанию считывания файла функция автоматически закрывает файл(при этом дескриптор файла становиться недействительным). $fp = fopen("counter.txt", "r"); // Открываем файл в режиме чтения Очень часто встречаются ситуации, когда необходимо содержимое сайта считать в массив. Эту возможность предусматривает использование функции file(). При вызове этой функции, каждая строка файла сохранятся в отдельном элементе указанного массива. Примечание: Не следует применять функцию file() к двоичным файлам (binary-safe), т.к. она не является безопасной в плане считывания двоичных файлов, если при этом, где-то встретиться символ конца файла (EOF), то она не гарантирует вам чтение всего двоичного файла. $file_array = file("counter.txt"); // Считывание файла в массив $file_array В конце статьи, вы найдете хороший «сборник рецептов» по массивам, который дает решение многих проблем, с которыми ежедневно встречается веб-программист. Давайте представим ситуацию, когда файл необходимо считать по символам. Для этого мы можем воспользоваться функцией fgetc(). Функция принимает единственный параметр. Функция полезна если нам необходимо найти какой-либо символ или количество одинаковых символов. $fp = fopen("counter.txt", "r"); // Открываем файл в режиме чтения III. Закрытие файла Закрытие файла происходить с помощью функции fclose(), которая принимает 1 обязательный параметр. $fp = fopen("counter.txt", "r"); Сборник рецептов 1) Нам необходимо проверить существует ли тот или иной файл. Для этого мы воспользуемся функцией file_exists(). <?php Примечание: Функция file_exists не производит проверку файлов на удаленном веб-сервере. Для правильной работы функции, файл со скриптом должен находиться на том сервере, где и проверяемый файл. 2) Определяем размер файла с помощью функции filesize() <?php 3) Создание временного файла с помощью функции tmpfile() $myfile = tmpfile(); 4) Вам необходимо определить количество строк в файле. Для этого используем функцию count() $fp = file("counter.txt"); 5) Нам необходимо использовать механизм блокировки файла $fp = fopen("counter.txt", 'a'); 6) Нам необходимо удалить определенную строку из файла <?php 7) Определение типа файла. Используем функцию filetype(), которая принимает единственный параметр $mytype = filetype("counter.txt"); После вызова строка может содержат одно из следующих значений:
8) Если вы хотите просмотреть все параметры файла, то следует воспользоваться функцией stat() $filename = stat("counter.txt"); ";"; ?> 9) Нам необходимо очистить файл, используем функцию ftruncate() $fp = fopen("counter.txt", 'a'); //Открываем файл в режиме записи 10) Нам необходимо узнать дату последнего изменения файла, используем функцию filectime(). Функция возвращает значение времени в форме Unix timestamp. echo filectime("counter.txt"); Источник: http://www.srubil.ru | |
| |
Просмотров: 379 | | |
Всего комментариев: 0 | |