Для того щоб зберегти дані в файл, є спеціальна функція в PHP file_put_contents(). З її допомогою можна записати інформацію в файл різними способами. Розглянемо всі приклади file_put_contents PHP.

Запись данных в файл при помощи php  file_put_contents.

Наведений спосіб дуже простий. Він не розкриває всіх можливостей функції і підходить тільки для демонстрації її роботи.

Адже не варто забувати про те, що подібний метод запису може дати збій в умовах працюючого сайту. Так як до файлу може надходити запит на читання і запис одночасно. Щоб уникнути подібних казусів, потрібно надати нашому скрипту ексклюзивний доступ до файлу. Для цього слід використовувати прапорець блокування LOCK_EX.

<?PHP

file_put_contents(document.txt,$info,LOCK_EX);

?>

Тепер з використанням LOCK_EX всі запити будуть оброблятися по черзі.

У наведених вище прикладах, функція file_put_contents() форматує файл перш, ніж записати в нього нову інформацію. Так само можна не видаляючи попередні дані, зберегти нові в кінець, застосувавши прапор FILE_APPEND.

Запись данных в файл при помощи php  file_put_contents.

Якщо запис пройшла вдало, функція повертає значення у вигляді розміру файлу у байтах, а в разі невдачі вона поверне FALSE. Знаючи цю інформацію, можна зробити перевірку, як зазначено в прикладі вище.

Збереження масивів у файл за допомогою file_put_contents

Для запису масивів у файл можна використовувати цю ж функцію, але перед цим масив потрібно серіалізовать. Іншими словами, перетворити його у текст. А після запису десериализовать все назад в масив.

<?PHP

$mass=array(1,2,3); // масив.

$document=’document.txt’; // Файл.

$info=serialize($mass); // Тут відбувається серіалізація масиву.

file_put_contents($document,$info); // Запис в файл.

$info=file_get_contents($document); // Читання файлу.

$mass=unserialize($info); // Десериализация даних файлу для повернення масиву в початковий стан.

?>

Запис у файл за допомогою fopen(), fwrite(), fclose()

Є й інший варіант запису даних за допомогою PHP з використанням функцій fopen(), fwrite(), fclose(). Вони аналогічні PHP file_put_contents(), але дозволяють більш детально підійти до написання скрипта виконує різні операцій з файлом.

  • fopen() – відкриття файлу;
  • fwrite() – читання файлу;
  • fclose() – закриття файлу;

При використанні функції fopen() потрібно вказати режим її роботи

  • $file = fopen($document, “w”);

У цьому прикладі функція fopen() з режимом “W” – (writting) може тільки записувати дані в файл. Тому його вміст буде вилучено. А якщо файл з таким ім’ям немає, то скрипт створить його.

  • У випадку, якщо потрібно дописати інформацію, зберігши при цьому попередній вміст, то при відкритті потрібно використовувати режим “W+”.

$file = fopen($document, “w+”); // Відкриття файлу.

Потім йде запис в файл:

  • fwrite($file, $info); // Запис в файл.
  • fclose($file); // Після запису закриваємо файл.

НАПИСАТИ ВІДПОВІДЬ

Please enter your comment!
Please enter your name here