Robotcraft and retrofit
Главная | Запись в текстовый файл | Регистрация | Вход
Суббота
28.12.2024
18:50
Приветствую Вас Гость | RSS
http://ru.html.net/tutorials/php/lesson16.php  

Урок 16: Запись в текстовый файл

В предыдущем уроке мы научились читать из текстового файла. В этом уроке будем записывать в него.

Эти два метода очень похожи, но есть одно важное отличие: для записи необходимо наличие права на запись. Это значит, что должен размещаться в директории, в которой у вас есть необходимые права.

Если вы работаете локально на своём компьютере, то можете сами установить права: щёлкните правой мышью на папке и выберите "Свойства/Properties". На большинстве вэб-хостов обычно имеется только одна папка с правами записи. Часто она называется "cgi-bin", "log", "databases" и т. п. Если ваш вэб-хост допускает, можно устанавливать права самостоятельно. Обычно можно щёлкнуть правой мышью на папке в FTP-клиенте и выбрать "properties" или "permissions" ил что-то похожее. Скриншот ниже показывает, как это выглядит в FileZilla.

FileZilla

См. также страницы поддержки ваших вэб-хостов.

Обратите внимание, что именно текстовый файл должен находиться в папке с правами на запись, а не РНР-файл.

Открытие текстового файла для записи

Как и при чтении текстового файла, функция документацияfopen используется при записи, но на этот раз режим устанавливается "w" (writing) или "a" (appending).

Разница между writing и appending в том, как размещается 'курсор' - в начале или в конце текстового файла.

В примерах этого урока используется пустой текстовый файл textfile.txt. Но вы можете создать свой собственный файл, если желаете.

Сначала попробуем открыть этот текстовый файл для записи:

 <?php

 // Открыть текстовый файл
 $f = fopen("textfile.txt", "w");

 // Закрыть текстовый файл
 fclose($f);

 ?>
 
 

Пример 1: Запись строки в текстовый файл

Для записи строки мы должны использовать функцию документацияfwrite:

 <html>

 <head>
 <title>Запись в текстовый файл</title>
 </head>
 <body>
 
 <?php

 // Открыть текстовый файл
 $f = fopen("textfile.txt", "w");

 // Записать строку текста
 fwrite($f, "PHP is fun!"); 

 // Закрыть текстовый файл
 fclose($f);

 // Открыть файл для чтения и прочитать строку
 $f = fopen("textfile.txt", "r");
 echo fgets($f); 

 fclose($f);

 ?>

 </body>
 </html>
 
 

 -  Отображение примера

Поскольку файл открыть для записи, строка добавляется в начало файла и перезаписывает существующую строку. Если мы открываем файл для appending, строка добавляется в низ файла, который увеличивается на одну строку всякий раз при записи.

Пример 2: Добавление блока текста в текстовый файл

Разумеется, можно также добавлять целый текстовый блок, а не одну строку:

 <html>
 <head>
 <title>Запись в текстовый файл</title>
 </head>
 <body>

 <?php

 // Открыть текстовый файл
 $f = fopen("textfile.txt", "w");

 // Записать текст
 fwrite($f, $_POST["textblock"]); 

 // Закрыть текстовый файл
 fclose($f);

 // Открыть файл для чтения и прочитать строку
 $f = fopen("textfile.txt", "r");

 // Читать текст
 echo fgets($f); 
 fclose($f);

 ?>
 
 </body>

 </html>
 
 

 -  Отображение примера

В следующих уроках мы разберём другой способ хранения данных: базы данных.

 
   

 

Copyright MyCorp © 2024
Бесплатный конструктор сайтов - uCoz