Работа с INI-файлами на PHP
Работа с INI-файлами на PHP
Файлы формата INI - это файлы конфигурации, которые используются различными программами и самой операционной системой Windows для хранения своих настроек. Мне этот формат очень нравится из-за своей доступности и легкости в обработке. На Ассемблере я уже сделал с ними все, что хотел, а теперь понадобилось работать с INI-файлами на PHP. В арсенале PHP есть стандартная функция parse_ini_file, но она содержит принципиальные ошибки, ограничена в возможностях и не решает нужных мне задач. Пришлось рисовать класс для полноценной работы с INI-файлами на PHP.
Итак, что умеет мой PHP INI Parser? Корректный доступ ко всем ключам и секциям INI-файла. Получение, добавление и изменение значений ключей и секций. Удаление ключей и секций не делал, так как не требовалось, но при необходимости добавить не проблема. Автоматическая запись или создание INI-файла после любых изменений с сохранением внутренней структуры (комментарии, пустые строки и т.п.). При работе с файлом подразумевается, что его структура соответствует общепринятым правилам (стандартов на формат INI-файла нет).
Пример тестового INI-файла:
############################
# Config file
############################
; Тип авторизации
auth = full
[auth]
; Данные для авторизации
login = supauzar
password = supadupapassa
[main]
; Данные для работы
do=something
try=10
Пример работы с этим файлов при помощи PHP INI Parser:
Code (PHP) : Убрать нумерацию
- // Подключить класс
- include 'class.ini.php';
- // Будем работать с файлом config.ini
- $ini = new ini('config.ini');
- $auth_type = $ini->get('', 'auth');
- if ($auth_type=='full') {
- $login = $ini->get('auth', 'login');
- $password = $ini->get('auth', 'password');
- // Добавить новый ключ в секцию auth
- $ini->set('auth', 'result', 'success');
- //...
- // какие-то действия
- //...
- $try = $ini->get('main', 'try');
- // Увеличить счетчик и сохранить новое значение ключа
- $ini->set('main', 'try', ++$try);
- // Добавить новый ключ в секцию main
- $ini->set('main', 'result', 'ok');
- // Добавить новую секцию и ключ
- $ini->set('new section', 'foo', 'bar');
- }
В приложении скрипт PHP INI Parser, тестовый INI-файл из статьи и небольшой скрипт с примером использования.
Просмотров: 1069 | Комментариев: 4
Метки: PHP
Внимание! Статья опубликована больше года назад, информация могла устареть!
Комментарии
Отзывы посетителей сайта о статье
ManHunter
(18.04.2024 в 11:17):
Ну если дурак придумал, то сказочный долбоеб дальше заголовка статью так и не осилил. И уж точно вряд ли поймет, о чем тут вообще идет речь.
mixmax
(18.04.2024 в 07:12):
дурак придумал велосипед
100 лет есть нативная функция пхп
$INI=parse_ini_file(KM.'mx.ini');
https://www.php.net/manual/ru/...ini-file.php
данный код использует сайт - [spam]
100 лет есть нативная функция пхп
$INI=parse_ini_file(KM.'mx.ini');
https://www.php.net/manual/ru/...ini-file.php
данный код использует сайт - [spam]
Эрнест
(25.02.2023 в 13:47):
Спасибо, не придется изобретать самому!
morgot
(20.09.2022 в 01:57):
Спасибо! Полезная вещь.
Добавить комментарий
Заполните форму для добавления комментария