Работа с файлами в PHP
Работа с файлами в PHP запись в файл и считывание информации из файлов в PHP
Язык программирования PHP обладает большими возможностями для работы с файлами. С помощью файлов можно сохранять результаты работы скриптов PHP и получать информацию от других приложений. Кроме того, в PHP есть возможность загружать файлы на сервер и скачивать файлы с сервера. Это позволяет с помощью PHP организовать фотогалерею, файлообменники
Общий алгоритм работы с файлами в PHP при чтении и записи в файл
Открытие файла и создание дескриптора
Работа с данными файла(запись в файл или чтение)
Закрытие файла
Разберём подробнее каждый пункт алгоритма работы с файлами в PHP
Чтобы начать работать с файлом, необходимо открыть файл, создать переменную-дескриптор. Чтобы открыть файл в PHP, необходимо использовать следующую команду
$переменная файла = fopen(путь к файлу, 'режим работы');
Режимы работы с файлами в PHP
r - открытие файла в PHP только для чтения
r+ - открытие файла в PHP для чтения и записи
w - создание нового пустого файла PHP для записи. Если существует старый файл, то он перезаписывается
Пример открытия файла test.txt, хранящегося в корне на чтение в PHP
$file = fopen("test.txt","r");
Пример открытия файла test2.txt, хранящегося в корне на чтение и запись в PHP
$file2 = fopen("test2.txt","r+");
Если файл не открылся, то переменная файла примет значение "False"
Для закрытия файла в PHP применяется следующая команда
fclose ($переменная файла);
Построчное чтение информации из файла в PHP
Для того, чтобы в PHP считать строку из файла, используется команда
$имя переменной строки = fgets($переменная файла, длина строки);
Чтобы в PHP считать все строки файла и вывести их на веб страницу, используется следующая конструкция
while (!feof($переменная файла))
{
$имя переменной строки = fgets($переменная файла, длина строки);
echo $переменная строки."<br />";
}
Пример PHP скрипта считывание всех строк файла и вывод на веб страницу
<?php
$fp = fopen("test.txt", "r");
if ($fp)
{
while (!feof($fp))
{
$mytext = fgets($fp, 999);
echo $mytext."<br />";
}
}
else echo "Ошибка при открытии файла";
fclose($fp);
?>
Запись в файл в PHP
Для записи строки в файл используется команда
fputs($переменная файла,$переменная строки);
Если вы хотите, чтобы после записи строки в файл следующая запись началась со следующей строки, в конец команды вставьте ." "
fputs ( $file, $str." ");
Разберём пример PHP скрипта с записью строки Hello world в файл
<?php
Открываем файл на чтение и запись
$file = fopen ("test.txt","r+");
Объявляем переменную строки
$str = "Hello world";
Проверяем открытие файла
if ( !$file )
{
echo("Ошибка открытия файла");
}
else
{
Записываем строку в файл
fputs ( $file, $str." ");
}
Закрываем файл
fclose ($file);
?>
Полный код скрипта для записи строки Hello world в файл
<?php
$file = fopen ("test.txt","r+");
$str = "Hello world";
if ( !$file )
{
echo("Ошибка открытия файла");
}
else
{
fputs ( $file, $str." ");
}
fclose ($file);
?>
Считывание массива из файла в PHP
Чтобы считать массив из файла, используется следующая команда
$имя массива = file("путь к файлу");
Пример считывание массива из файла
$file_array = file("test.txt");
Чтобы понять, какое количество строк у файла или массива используется функция
count($имя массива или переменной файла);
Разберём пример считывания массива из файла и вывод на страницу в PHP
<?php
Открываем файл на чтение и запись
$file=fopen("test.txt","r+");
Записываем файл в массив
$file_array = file("test.txt");
Проверяем наличие массива
if(!$file_array)
{
echo("Ошибка открытия файла");
}
else
{
Выводим все строки массива
for($i=0; $i < count($file_array); $i++)
{
echo $file_array[$i],' ','<br>';
}
Закрываем файл
fclose ($file);
}
?>
Содержимое файла
Вывод на веб страницу
Запись массива в файл в PHP
Чтобы записать массив в файл, необходимо использовать следующую конструкцию
for($переменная цикла=0; $переменная цикла < count($имя массива); $переменная цикла++)
{
fputs($переменная файла,$имя массива[$переменная цикла]." ");
}
Пример записи массива в файл
for($i=0; $i < count($file_array); $i++)
{
fputs($file2,$file_array[$i]." ");
}
Пример PHP скрипта с записью содержимого файла в массив, обработкой массива и записью в другой файл. Считываем массив чисел из файла, умножаем его на 2 и записываем в другой файл
<?php
$file2=fopen("test2.txt","w");
$file_array = file("test.txt");
if(!$file_array)
{
echo("Ошибка открытия файла");
}
else
{
for($i=0; $i < count($file_array); $i++)
{
echo $file_array[$i],' ','<br>';
}
for($i=0; $i < count($file_array); $i++)
{
$file_array[$i]=$file_array[$i]*2;
echo $file_array[$i],' ','<br>';
}
for($i=0; $i < count($file_array); $i++)
{
fputs($file2,$file_array[$i]." ");
}
fclose ($file2);
}
?>
Вернуться к содержанию курса по PHP Перейти к теме Загрузка и скачивание файлов в PHP>>
Полезно : Регистрация домена и размещение сайта на хостинге
Поделиться
Нет комментариев. Ваш будет первым!