Уроки PHP – робота з файлами
Сьогодні ми розглянемо основи, які ви повинні знати при роботі з файлами в PHP. Мова програмування PHP має ряд функцій, які ви можете використовувати для створення, читання, завантаження і редагування файлів. Коли вам потрібно відкрити файл, використовуйте функцію fopen()
з ім’ям файлу в якості параметра. Цю функцію також можна використовувати і для створення нового файлу. Якщо вказаного в параметрі файлу не існує, тоді PHP створить його.
У функції відкриття файлу fopen()
є 8 режимів, і для використання одного з них, ви передаєте його код в якості другого параметра функції. Цими режимами є r
, w
, a
, x
, r+
, w+
, a+
та x+
. Нижче наведені короткі описи для кожного із цих режимів.
Якщо ви хочете записати дані в файл, тоді використовуйте функцію fwrite()
. Ця функція має два параметри. Перший параметр – це файл для запису (його назва). Другий параметр – це вміст (наприклад, рядок), яке ви хочете записати в цей файл. Коли вам потрібно закрити файл, використовуєте функцію fclose()
. Ця функція також повертає TRUE
, якщо файл успішно закритий, або FALSE
, якщо закриття не вдалося. Рекомендується завжди закривати всі відкриті файли після того, як ви закінчите з ними працювати.
Короткий опис режимів відкриття файлів в PHP:
<?php // a: Відкриває файл тільки для запису. Це додасть новий контент до існуючих даних. // a+: Відкриває файл для читання або запису, а також створює новий файл, якщо файл не існує. // r: Відкриває файл тільки для читання. // r+: Відкриває файл для читання або запису. // x: Створює новий файл тільки для запису. // x+: Створює новий файл для читання або запису. // w: Відкриває файл тільки для запису. Це зітре вміст файлу. Якщо файл не існує, він буде створений. // w+: Відкриває файл для читання або запису. Це зітре вміст файлу. Якщо файл не існує, він буде створений. ?>
Деякі практичні приклади операцій з файлами в PHP:
<?php // Відкрити існуючий файл в режимі запису // Пам'ятайте, що "w" стирає існуючий вміст файлу. $exampleFile = fopen("some-file.txt", "w"); // Або створити новий файл в режимі запису, використовуючи ім'я файлу, якого ще не існує. $newFile = fopen("some-new-file.txt", "w"); // Запис до першого (існуючого) файлу fwrite($exampleFile, "Цей текст замінить будь-який існуючий вміст файлу."); // Записати в другий (новий) файл, використовуючи змінну $someText = "Це текст для другого файлу"; fwrite($newFile, $someText); // Закрити перший (існуючий) файл fclose($exampleFile); // Закрити другий (новий) файл fclose($newFile); ?>
Зверніть увагу на режим, який ви використовуєте. Пам’ятайте, що режим w
видалить весь існуючий вміст файлу. Якщо ви хочете додати контент в файл, вам потрібно відкрити файл в режимі додавання (а
).
<?php // Відкрити існуючий файл в режимі додавання $file = fopen($exampleFile, 'a'); // Додати контент до вже існуючих даних fwrite($file, "Деякий новий додатковий текст"); // Закрити файл fclose($file); ?>
Ви можете просто прочитати файл, не відкриваючи його. В цьому випадку ви можете використовувати функцію file()
. Ця функція прочитає весь файл у вигляді масиву. Кожен елемент в масиві відповідає одному рядку у файлі.
<?php // Читання з файлу і збереження вмісту у вигляді масиву в змінній $fileContent = file('some-file.txt'); // Проходження циклом по масиву $fileContent і вивід кожного рядка foreach ($fileContent as $oneLine) { echo $oneLine .", "; } ?>
От і все! Ми розглянули основні моменти, які потрібні, щоб працювати з файлами в PHP.
Дякуємо, що читаєте нас!