Работа с файлами на php: открытие, запись, чтение
Открытие и закрытие файлов
Для закрытия доступа к файлу служит функция fclose ().
Чтение и запись файлов
Функции для работы с файлами в php позволяют считывать содержимое построчно и посимвольно:
Для записи текстовых данных в файл существует две идентичные функции:
Создание и удаление файлов
Удалить файл можно с помощью функции unlink(). Ее синтаксис:
Получение информации о файле
70.59K
Категория: ПрограммированиеПрограммирование

Rabota_s_faylami_na_php

1. Работа с файлами на php: открытие, запись, чтение

2.

В php все операции с файлами осуществляются в несколько этапов:
• Открытие файла
• Редактирование содержимого
• Закрытие файла

3. Открытие и закрытие файлов

Для открытия файла используется функция fopen(). Ее синтаксис:
• $file = fopen("c:/www/html/file.txt",«string mode");
• string mode – указывает режим открытия файла. Принимаемые аргументом значения:
• r – файл открыт только для чтения, файловый указатель устанавливается в начале;
• r+ – файл открыт для чтения и записи;
• w – создается новый файл только для записи. Если файл с таким именем уже существует, в
нем происходит автоматическое удаление всех данных;
• w+ - создается новый файл для записи и чтения. При существовании такого файла
происходит полная перезапись его данных на новые;
• a – файл открыт для записи. Указатель устанавливается в конце. То есть запись в файл php
начнется не с начала, а с конца;
• a+ – открытие файла в режиме чтения и записи. Запись начнется с конца;
• b – режим работы с файлом, содержащим в себе двоичные данные (в двоичной системе
исчисления). Этот режим доступен только в операционной системе Windows.

4. Для закрытия доступа к файлу служит функция fclose ().

<?php
$file = fopen("fopen.txt","r");
fclose ($file);
?>
• После каждого чтения или записи файл нужно закрывать этой
функцией. Иначе остается открытым поток, созданный для файла.
А это ведет к лишнему расходу серверных мощностей.

5. Чтение и запись файлов

• Для простого отображения всего содержимого файла подходит
функция readfile ()
<?php
readfile("fopen.txt");
?>

6.

• Тот же самый файл можно прочитать с помощью функции fpassthru (). Она
считывает данные от конечной позиции указателя и до конца файла
• Для работы с функцией требуется открытие и закрытие файла. Пример:
<?php
$file = fopen("fopen.txt","r");
if(!file) { echo("Ошибка открытия файла"); }
else
{
echo fpassthru($file);
fclose ($file);
}
?>

7. Функции для работы с файлами в php позволяют считывать содержимое построчно и посимвольно:

• Функция fgets() считывает строку длиною length
<?php
$file = fopen("fopen.txt","r");
if(!file)
{ echo("Ошибка открытия файла");}
else
{
echo fgets($file,15);//Покажет первые 15 символов
fclose ($file);
}
?>

8. Для записи текстовых данных в файл существует две идентичные функции:

• int fputs ( int file, string string [, int length ])
• int fwrite ( int file, string string [, int length ])
• Функции записывают в файл int file строку string string указанной
длины int length (необязательный аргумент)

9.

<?php
$file = fopen("fopen.txt","a");//Запись начнётся с конца
$str = "Hello, world!";
if(!file)
{ echo("Ошибка открытия файла"); }
else
{
fputs ( $file, $str);
}
fclose ($file);
readfile("fopen.txt");
?>

10. Создание и удаление файлов

• Чтобы создать файл php, можно использовать функцию fopen() в
режиме доступа «w» или «w+». Или функцию touch (). Она
устанавливает время изменения файла. При отсутствии элемента
с искомым именем он будет создан. Ее синтаксис:
<?php
touch("fopen2.txt");
?>

11.

• Для создания копии файла используется функция copy(). В качестве аргументов она
принимает имя оригинала и файла, куда нужно скопировать содержимое. Если он не
существует, то будет создан. Синтаксис функции:
<?php
$file = "fopen.txt";
$newfile = "fopen2.txt";
if (!copy($file, $newfile)) {
echo "не удалось скопировать $file...\n";}
else
{
echo "Содержимое fopen.txt скопировано в файл fopen2.txt";
}
?>

12. Удалить файл можно с помощью функции unlink(). Ее синтаксис:

<?php
unlink("fopen2.txt");
?>

13. Получение информации о файле

Для получения информации о файлах в php используется целый
ряд функций:
• bool fileexists (string filename) – проверяет, существует ли
элемент;
• int fileatime (string filename) – возвращает время последнего
открытия;
• int filesize (string filename) – возвращает байтовый размер файла;
• string filetype (string filename) – тип файла.

14.

<?php
$file="fopen1.txt";
if(file_exists($file)==true){//проверка существования файла
echo date("F d Y.",fileatime($file))."<b>";//дата обращения к файлу
echo filesize($file)."<b>";//размер
echo filetype($file)."<b>";//тип
}
else
{
echo "Такого файла не существует";
}
?>

15.

1. Сделать форму, в которой пользователь вводит имя файла. После отправки формы PHP-скрипт
создает этот файл.
Что должно быть в форме:
•поле для имени файла;
•кнопка «Создать файл».
Что сделать :
•принять имя файла из формы;
•создать файл с помощью touch() или fopen(..., "w");
•вывести сообщение: файл создан или возникла ошибка.
2. Сделать форму, в которой пользователь вводит имя файла и текст. После отправки текст записывается в файл.
Что должно быть в форме:
• поле для имени файла;
• текстовое поле или <textarea> для содержимого;
• кнопка «Записать».
Что сделать :
• открыть файл в режиме "w" или "a";
• записать в него текст через fwrite() или fputs();
• закрыть файл через fclose();
• вывести сообщение об успешной записи.

16.

3. Сделать форму, в которой пользователь указывает имя файла. После отправки на экран выводится его содержимое.
Что должно быть в форме:
•поле для имени файла;
•кнопка «Прочитать файл».
Что сделать :
•проверить существование файла;
•открыть его для чтения;
•вывести содержимое с помощью readfile() или построчного чтения;
•закрыть файл.
4. Сделать форму для удаления файла по имени.
Что должно быть в форме:
•поле для имени файла;
•кнопка «Удалить файл».
Что сделать :
•получить имя файла из формы;
5. Сделать форму, где пользователь задает исходное имя файла и имя копии. После
•проверить, существует ли файл;
копирования вывести информацию о новом файле.
•удалить его функцией unlink();
Что должно быть в форме:
•вывести результат операции.
•поле «Исходный файл»;
•поле «Имя копии»;
•кнопка «Копировать».
Что сделать :
•проверить существование исходного файла;
•скопировать его через copy();
•вывести сведения о созданной копии: существует ли файл, его размер и тип;
•для этого использовать file_exists(), filesize(), filetype().
English     Русский Правила