Работа с файлами в PHP: основные операции



PHP предоставляет мощные функции для работы с файлами, будь то чтение, запись или манипуляции с содержимым. Давайте разберем основные операции, которые часто встречаются в разработке



1️⃣ Открытие и закрытие файлов



Для начала работы с файлом нужно его открыть с помощью fopen():

$file = fopen('example.txt', 'r'); // Открыть файл для чтения

if ($file) {

echo "Файл открыт успешно!";

fclose($file); // Закрытие файла

} else {

echo "Не удалось открыть файл.";

}




Режимы открытия файлов:

🔹'r' — только для чтения

🔹'w' — для записи (перезаписывает файл)

🔹'a' — для записи (добавляет в конец файла)

🔹'x' — для создания файла (если файл существует, вызовет ошибку)



2️⃣ Чтение содержимого файла



Для чтения содержимого файла можно использовать fread(), fgets() или file_get_contents()



🔹Чтение всего файла:

$content = file_get_contents('example.txt');

echo $content;




🔹Чтение файла построчно:

$file = fopen('example.txt', 'r');

while ($line = fgets($file)) {

echo $line . "<br>";

}

fclose($file);




🔹Чтение файла в массив

$lines = file('example.txt');

print_r($lines); // Массив строк из файла




3️⃣ Запись в файл



Записать данные в файл можно с помощью fwrite() или file_put_contents()



🔹Запись строки в файл:

$file = fopen('example.txt', 'w');

fwrite($file, "Привет, мир!");

fclose($file);




🔹Запись данных в конец файла:

file_put_contents('example.txt', "Данные добавлены в конец\n", FILE_APPEND);




🔹Запись массива в файл (каждый элемент на новой строке):

$array = ["Строка 1", "Строка 2", "Строка 3"];

file_put_contents('example.txt', implode("\n", $array));




4️⃣ Проверка существования файла



Перед тем как работать с файлом, полезно проверить его наличие:

if (file_exists('example.txt')) {

echo "Файл существует!";

} else {

echo "Файл не найден.";

}




5️⃣ Удаление и переименование файлов



Чтобы удалить файл, используйте unlink(), а для переименования — rename()



🔹Удаление файла:

if (unlink('example.txt')) {

echo "Файл удален.";

} else {

echo "Не удалось удалить файл.";

}




🔹Переименование файла:

if (rename('oldfile.txt', 'newfile.txt')) {

echo "Файл переименован.";

} else {

echo "Ошибка при переименовании.";

}




6️⃣ Манипуляции с путями и директориями



🔹Получение информации о файле:

$file_info = pathinfo('example.txt');

print_r($file_info); // Массив с деталями пути (basename, dirname, extension)




🔹Создание директории:

mkdir('new_directory');




🔹Проверка, является ли путь директорией:

if (is_dir('new_directory')) {

echo "Это директория.";

}






Итог

Работа с файлами в PHP — важная часть любого веб-приложения. С помощью встроенных функций можно эффективно читать, записывать, удалять и изменять файлы. Используйте их с осторожностью, особенно при работе с пользовательским вводом, чтобы избежать ошибок или атак.



👉 @PHPgx | #заметки