PHP5 Открыть, прочитать, закрыть файл
В этой главе Вы научитесь, как открыть, прочитать и закрыть файл на сервере.
PHP Открытый файл
Самый лучший метод для открытия файлов является функция fopen
.
Функция fopen
, даст вам больше вариантов, чем функция readfile()
.
Во время занятий, будем использовать текстовый файл, "webdictionary.txt",:
AJAX = Асинхронный JavaScript и XML
CSS = Каскадные Таблицы Стилей
HTML = Язык Разметки Гипер Текста
PHP = PHP Гипертекстовый Препроцессор
SQL = Язык Структурированных Запросов
SVG = Масштабируемая Векторная Графика
XML = Расширенный Язык Разметки
Первый параметр fopen
содержит, имя открываемого файла, а
второй параметр указывает, в каком режиме должен быть открыт файл. Следующий пример
также генерирует сообщение, если функции fopen
не удается открыть указанный файл:
Пример
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Не удается открыть файл!");
echo fread($myfile,filesize("webdictionary.txt"));
fclose($myfile);
?>
Смотреть код »
Совет: Функции fread()
и fclose()
будут объяснены позже.
Файл может быть открыт в одном из следующих режимов:
Режим | Описание |
---|---|
r | Открыть файл только для чтения. Указатель файла на начало файла |
w | Открыть файл только для записи. Удаляет содержимое файла или создает новый файл, если он не существует. Указатель файла на начало файла |
a | Открыть файл только для записи. Существующие данные в файле сохраняются. Указатель файла начинается в конце файла. Создает новый файл, если файл не существует |
x | Создает новый файл только для записи. Возвращает false и сообщение об ошибке, если файл уже существует |
r+ | Открытие файла для чтения и записи. Указатель файла на начало файла |
w+ | Открытие файла для чтения и записи. Удаляет содержимое файла или создает новый файл, если он не существует. Указатель файла на начало файла |
a+ | Открытие файла для чтения и записи. Существующие данные в файле сохраняются. Указатель файла начинается в конце файла. Создает новый файл, если файл не существует |
x+ | Создает новый файл для чтения и записи. Возвращает false и сообщение об ошибке, если файл уже существует |
PHP Чтение файла
Функция fread()
, чтение открытого файла.
Первый параметр fread()
содержит имя файла для чтения, а
второй параметр указывает максимальное число байтов для чтения.
Следующий PHP код считывает "webdictionary.txt" файл до конца:
fread($myfile,filesize("webdictionary.txt"));
PHP Закрыть Файл
Функция fclose()
используется для закрытия открытого файла.
Это хорошая практика программирования, чтобы закрыть все файлы, после того как закончили работу с ними. Вы не хотите открыть файл на ваш сервер принимает ресурсы!
Функция fclose()
требует имя файла (или переменной, содержащей имя файла), который нужно закрыть:
<?php
$myfile = fopen("webdictionary.txt", "r");
// некоторый код для выполнения....
fclose($myfile);
?>
PHP Чтение одной строки
Функция fgets()
используется для чтения одной строки из файла.
В примере ниже выводится первая строка файла "webdictionary.txt":
Пример
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Не удается открыть файл!");
echo fgets($myfile);
fclose($myfile);
?>
Смотреть код »
Примечание: После вызова функции fgets()
, указатель файла перемещается на следующую строку.
PHP Проверить отключение файла
Функция feof()
проверяет, отключение файла "end-of-file" (EOF) было достигнуто.
Функция feof()
полезен для цикла данных неизвестной длины.
В приведенном примере файл "webdictionary.txt" выводит строку, пока не будет достигнут конец файла:
Пример
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Не удается открыть файл!");
// Вывести все строки файла
while(!feof($myfile)) {
echo fgets($myfile) . "<br>";
}
fclose($myfile);
?>
Смотреть код »
PHP Чтение одного символа
Функция fgetc()
используется для чтения одного символа из файла.
В приведенном примере файл "webdictionary.txt" вводит символ, пока не будет достигнут конец файла:
Пример
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Не удается открыть файл!");
// Вывести все строки файла
while(!feof($myfile)) {
echo fgetc($myfile);
}
fclose($myfile);
?>
Смотреть код »
Примечание: После вызова функции fgetc()
указатель файла перемещается на следующий символ.
РНР Полный справочник файловой системы
Для полной справки функций файловой системы, перейдите к нашему полному PHP Справочник файловой системы.