Обработка и функции PHP File()
Что такое файл?
Файл — это просто ресурс для хранения информации на компьютере.
Файлы обычно используются для хранения такой информации, как:
- Конфигурационные настройки программы
- Простые данные, такие как имена контактов и номера телефонов.
- Изображения, картинки, фотографии и т. д.
Поддержка форматов файлов PHP
Файловые функции PHP поддерживают широкий спектр форматов файлов, включая:
- File.txt
- Файл.log
- File.custom_extension т.е. file.xyz
- Файл.csv
- File.gif, file.jpg и т. д.
- Файлы обеспечивают постоянное и экономичное решение для хранения простых данных по сравнению с базами данных, требующими другого программного обеспечения и навыков для управления системами СУБД.
- Вы хотите хранить простые данные, такие как журналы сервера, для последующего извлечения и анализа.
- Вы хотите сохранить настройки программы, т.е. program.ini.
PHP-файл() Функция
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-функция 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.
Мы будем использовать следующие функции.
- Фопен
- Fнаписать
- fclose
Код ниже «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 В Вашем браузере.
Вы получите следующую страницу
Примечание. Если ваш диск заполнен или у вас нет разрешения на запись файлов, вы получите сообщение об ошибке.
Вернитесь к URL-адресу http://localhost/phptuts/file_function.php .
Какие результаты вы получаете?
PHP-функция fgets()
Функция fgets используется для чтения файлов php построчно. Он имеет следующий базовый синтаксис. fgets ($ дескриптор); ЗДЕСЬ,
- «$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 используется для копирования файлов. Он имеет следующий базовый синтаксис. копировать ($ файл, $ скопированный_файл); ЗДЕСЬ,
- «$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'"; ?>
Удаление файла
Функция unlink используется для удаления файла. Код ниже иллюстрирует реализацию.
<?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.
- В таблице ниже показано краткое описание охватываемых функций.
Функция | Описание |
---|---|
Файл существует | Используется для определения, существует файл или нет. |
Еореп | Используется для открытия файла. Возвращает указатель на открытый файл |
FWRITE | Используется для записи в файлы |
fclose | Используется для открытия закрытых файлов. |
fgets | Используется для чтения файла построчно |
копия | Используется для копирования существующего файла |
разъединить | Используется для удаления существующего файла |
file_get_contents | Используется для возврата содержимого файла в виде строки. |