Введение

Модуль Yet Another Configurations Container, или Yaconf, — ещё один контейнер конфигураций, который разбирает INI-файлы и сохраняет результат в PHP при запуске, результат сохраняется на протяжении жизненного цикла PHP.

Yaconf-контейнер сохраняет каждую конфигурацию как встроенную строку или неизменяемый массив. Из-за такого способа хранения параметры конфигурации не участвуют в подсчёте refcount-ссылок, поэтому извлечение конфигурации из модуля Yaconf считают операцией нулевого копирования, или операцией Zero-copy — техника выполнения операций без копирования данных из одной области памяти в другую, которая увеличивает производительность приложений.

Yaconf поддерживает в INI-файлах разделы и наследование разделов конфигураций. Модуль Yaconf поддерживает автоматическую перезагрузку конфигураций после изменений INI-файлов, если PHP собрали в непотокобезопасном режиме — без поддержки ZTS.

Yaconf требует PHP 7.0 или выше.

Пример #1 Пример INI-файла

;Простая пара ключ-значение
key=val

;Хеш
hash.a=val

;Массив
arr.0=val
;или так
arr[]=val

;PHP-константа
version=PHP_VERSION

;Переменная окружения
env=${PATH}

Пример #2 Пример INI-файла с разделами

[SectionA]
key=val
hash.a=val

;Раздел SectionB наследует раздел SectionA
[SectionB:SectionA]
key=new_val ;переопределение параметра key из раздела SectionA
Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top