Обробка та функції PHP File().

Що таке файл?

Файл — це просто ресурс для зберігання інформації на комп’ютері.

Файли зазвичай використовуються для зберігання такої інформації, як:

  • Параметри конфігурації програми
  • Прості дані, такі як імена контактів проти номерів телефонів.
  • Зображення, малюнки, фотографії тощо.

Підтримка форматів файлів PHP

Файлові функції PHP підтримують широкий спектр форматів файлів, зокрема:

  • Файл.txt
  • File.log
  • File.custom_extension, тобто файл.xyz
  • Файл.csv
  • File.gif, file.jpg тощо
  • Файли забезпечують постійне економічно ефективне рішення для зберігання простих даних порівняно з базами даних, які потребують іншого програмного забезпечення та навичок для керування системами СУБД.
  • Ви хочете зберігати прості дані, такі як журнали сервера, для подальшого пошуку та аналізу
  • Ви хочете зберегти налаштування програми, тобто program.ini

Функція PHP file().

PHP забезпечує зручний спосіб роботи з файлами завдяки багатій колекції вбудованих функцій.

Operaтакі системи, як Windows і MAC OS не чутливі до регістру Linux or Юнекс операційні системи чутливі до регістру.

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

Давайте тепер розглянемо деякі з найпоширеніших файлових функцій PHP.

Функція PHP file_exists().

Ця функція використовується, щоб визначити, чи існує файл чи ні.

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

Функція file_exist має такий синтаксис.

<?php
file_exists($filename); 
?>

ТУТ,

  • “file_exists()” – це функція PHP, яка повертає true, якщо файл існує, і false, якщо він не існує.
  • “$file_name” – це шлях і ім’я файлу, який потрібно перевірити

Код нижче використовує функцію file_exists, щоб визначити, чи існує файл my_settings.txt.

<?php
if (file_exists('my_settings.txt'))
 {    
        echo 'file found!';
 } 
else
 {     
        echo 'my_settings.txt does not exist';
  } 
?>

Збережіть наведений вище код у файлі з назвою file_function.php. Припустимо, що ви зберегли файл у папці phptuts у htdocs, відкрийте URL-адресу http://localhost/phptuts/file_function.php у вашому браузері Ви отримаєте такі результати.

Функція PHP file_exists().

Функція PHP fopen().

Функція fopen використовується для відкриття файлів. Він має такий синтаксис

<?php
fopen($file_name,$mode,$use_include_path,$context);
 ?>

ТУТ,

  • «fopen» — це функція відкриття файлів PHP
  • «$file_name» — ім’я файлу, який потрібно відкрити
  • «$mode» — це режим, у якому має бути відкрито файл, таблиця нижче показує режими
режим Опис
r • Прочитати файл з початку.
• Повертає false, якщо файл не існує.
• Лише для читання
r+ • Прочитати файл з початку
• Повертає false, якщо файл не існує.
• Читати і писати
w • Записати у файл на початку
• обрізати файл до нульової довжини
• Якщо файл не існує, спробуйте його створити.
• Лише писати
w+ • Запис у файл на початку, скорочення файлу до нульової довжини
• Якщо файл не існує, спробуйте його створити.
• Читати і писати
a • Додати до файлу в кінці
• Якщо файл не існує, спробуйте його створити.
• Лише писати
a+ • Php додати до файлу в кінці
• Якщо файл не існує, спробуйте його створити
• Читати і писати
  • “$use_include_path” є необов’язковим, за замовчуванням – false, якщо встановлено значення true, функція також шукає у включеному шляху.
  • «$context» є необов’язковим, його можна використовувати для визначення підтримки контексту.

Функція PHP fwrite().

Функція fwrite використовується для запису файлів.

Він має такий синтаксис

<?php
fwrite($handle, $string, $length);
?>

ТУТ,

  • «fwrite» — це функція PHP для запису у файли
  • «$handle» — це ресурс покажчика файлу
  • “$string” – це дані, які потрібно записати у файл.
  • «$length» є необов’язковим, його можна використовувати для визначення максимальної довжини файлу.

Функція PHP fclose().

Функція fclose() використовується для закриття файлу в php, який уже відкрито

Він має такий синтаксис.

<?php
fclose($handle); 
?>

ТУТ,

  • "fclose" є функція PHP для закриття відкритого файлу
  • «$handle» — це ресурс покажчика файлу.

Давайте тепер розглянемо приклад створення my_settings.txt.

Ми будемо використовувати наступні функції.

  • Фопен
  • Fwrite
  • закрити

Наведений нижче код “create_my_settings_file.php” реалізує наведений вище приклад.

Відкрийте файл
<?php 

$fh = fopen("my_settings.txt", 'w')

or

die("Failed to create file"); ?>
Закриття файлу
<?php

fclose($fh);

?>
Створити файл
<?php 

$fh = fopen("my_settings.txt", 'w') or die("Failed to create file"); 

$text = <<<_END 

localhost;root;pwd1234;my_database 

_END; 

fwrite($fh, $text) or die("Could not write to file"); 

fclose($fh); 

echo "File 'my_settings.txt' written successfully"; ?>    

Тестування коду

Відкрийте URL-адресу http://localhost/phptuts/create_my_settings.php у веб-переглядачі.

Ви отримаєте наступну сторінку

Функція PHP fclose

Примітка: якщо ваш диск заповнений або у вас немає дозволу на запис файлів, ви отримаєте повідомлення про помилку.

Поверніться до URL-адреси http://localhost/phptuts/file_function.php .

Які результати ви отримуєте?

Функція PHP fgets().

Функція fgets використовується для читання файлів php рядок за рядком. Він має наступний базовий синтаксис. fgets($handle); ТУТ,

  • «$fgets» — це функція PHP для читання рядків файлу
  • «$handle» — це ресурс покажчика файлу.

Давайте тепер розглянемо приклад, який читає файл my_settings.txt за допомогою функцій fopen і fgets.

Наведений нижче код read_my_settings.php реалізує наведений вище приклад.

<?php
$fh = fopen("my_settings.txt", 'r') or die("File does not exist or you lack permission to open it");
$line = fgets($fh);
echo $line; fclose($fh);
 ?>

ТУТ,

  • Функція «fopen» повертає вказівник на файл, указаний у шляху до файлу
  • Функція «die()» викликається, якщо сталася помилка. Він відображає повідомлення та існує виконання сценарію

Функція PHP copy().

Для копіювання файлів використовується функція PHP copy. Він має наступний базовий синтаксис. копіювати ($файл,$скопійований_файл); ТУТ,

  • “$file” визначає шлях до файлу та назву файлу, який потрібно скопіювати.
  • “copied_file” вказав шлях і назву скопійованого файлу

Наведений нижче код ілюструє реалізацію

<?php
copy('my_settings.txt', 'my_settings_backup.txt') or die("Could not copy file");
echo "File successfully copied to 'my_settings_backup.txt'"; 
?>

Видалення файлу

Функція роз’єднання використовується для видалення файлу. Наведений нижче код ілюструє реалізацію.

<?php
if (!unlink('my_settings_backup.txt'))
{
     echo "Could not delete file";
 }
else
{
     echo "File 'my_settings_backup.txt' successfully deleted"; 
}
 ?>

Функція PHP file_get_contents().

Функція file_get_contents використовується для читання всього вмісту файлу.

Наведений нижче код ілюструє реалізацію.

Різниця між file_get_contents і fgets полягає в тому, що file_get_contents повертає дані файлу як рядок, а fgets читає файл рядок за рядком.

<?php
echo "<pre>"; // Enables display of line feeds
echo file_get_contents("my_settings.txt");
echo "</pre>"; // Terminates pre tag
?>

Підсумки

  • Файл — це ресурс для зберігання даних
  • PHP має багату колекцію вбудованих функцій, які спрощують роботу з файлами.
  • Загальні файлові функції включають fopen, fclose, file_get_contents
  • У таблиці нижче наведено підсумок охоплених функцій
функція Опис
File_exists Використовується для визначення наявності файлу чи ні
fopen Використовується для відкриття файлу. Повертає покажчик на відкритий файл
fwrite Використовується для запису у файли
закрити Використовується для відкриття закритих файлів
fgets Використовується для читання файлу рядок за рядком
скопіювати Використовується для копіювання існуючого файлу
unlink Використовується для видалення існуючого файлу
file_get_contents Використовується для повернення вмісту файлу у вигляді рядка