PHP 5 Открытие/чтение/закрытие файла
В этой главе мы научим вас, как открывать, читать и закрывать файл на сервере.
PHP открытый файл-fopen ()
Более лучший метод для того чтобы раскрыть архивы с fopen()
функцией. Эта функция дает вам больше опций, чем readfile()
функция.
Мы будем использовать текстовый файл, "словарь. txt", во время уроков:
AJAX = Асинхронный JavaScript и XML
CSS = каскадные таблицы стилей
HTML = Язык разметки Hyper-текста
PHP = PHP-препроцессор
SQL = Язык структурированных запросов
SVG = Масштабируемая векторная графика
XML = Расширяемый язык разметки
Первый параметр fopen()
содержит имя открываемого файла, а второй параметр указывает, в каком режиме должен быть открыт файл. В следующем примере также генерируется сообщение, если функция fopen () не может открыть указанный файл:
Пример
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
echo fread($myfile,filesize("webdictionary.txt"));
fclose($myfile);
?>
Совет: fread()
и fclose()
функции будут описаны ниже.
Файл может быть открыт в одном из следующих режимов:
Режимы | Описание |
---|---|
r | Откройте файл только для чтения. Указатель файла начинается в начале файла |
w | Откройте файл только для записи. Стирает содержимое файла или создает новый файл, если он не существует. Указатель файла начинается в начале файла |
a | Откройте файл только для записи. Существующие данные в файле сохраняются. Указатель файла начинается в конце файла. Создает новый файл, если файл не существует |
x | Создает новый файл только для записи. Возвращает false и ошибку, если файл уже существует |
r+ | Откройте файл для чтения/записи. Указатель файла начинается в начале файла |
w+ | Откройте файл для чтения/записи. Стирает содержимое файла или создает новый файл, если он не существует. Указатель файла начинается в начале файла |
a+ | Откройте файл для чтения/записи. Существующие данные в файле сохраняются. Указатель файла начинается в конце файла. Создает новый файл, если файл не существует |
x+ | Создает новый файл для чтения и записи. Возвращает false и ошибку, если файл уже существует |
PHP читать файл-fread ()
fread()
функция читает из открытого файла.
Первый параметр fread()
содержит имя файла для чтения и второй параметр указывает максимальное число байтов для чтения.
Следующий код PHP читает файл "Dictionary.txt" до конца:
fread($myfile,filesize("webdictionary.txt"));
PHP закрыть файл-fclose ()
fclose()
функция используется для закрытия открытого файла.
Это хорошая практика программирования, чтобы закрыть все файлы после того, как вы закончили с ними. Вы не хотите, чтобы открытый файл, работающий вокруг на вашем сервере, занимая ресурсы!
fclose()
требуется имя файла (или переменной, которая содержит filename) мы хотим закрыть:
<?php
$myfile = fopen("webdictionary.txt", "r");
// some code to be executed....
fclose($myfile);
?>
PHP прочитал одну строку-fgets ()
fgets()
функция используется для считывания одной строки из файла.
В приведенном ниже примере выводится первая строка файла "Dictionary. txt":
Пример
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
echo fgets($myfile);
fclose($myfile);
?>
Примечание: После вызова fgets()
функции указатель файла переместился на следующую строку.
PHP проверить конец файла-feof ()
feof()
функция проверяет, было ли достигнуто "конец файла".
feof()
функция полезна для циклов по данным неизвестной длины.
В приведенном ниже примере читает файл "словарь.txt" строка за строкой, пока не будет достигнут конец файла:
Пример
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// Output one line until end-of-file
while(!feof($myfile)) {
echo fgets($myfile) . "<br>";
}
fclose($myfile);
?>
PHP читать один символ-fgetc ()
fgetc()
функция используется для считывания одного символа из файла.
В приведенном ниже примере читается символ файла "Dictionary.txt", пока не будет достигнут конец файла:
Пример
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// Output one character until end-of-file
while(!feof($myfile)) {
echo fgetc($myfile);
}
fclose($myfile);
?>
Примечание: После вызова fgetc()
функции указатель файла перемещается к следующему символу.
Полная ссылка на файловую систему PHP
Для полной ссылки на функции файловой системы, перейдите на наш полный Ссылка на файловую систему PHP.