Поведение функций зависит от установок в файле php.ini.
| Имя | По умолчанию | Место изменения | Список изменений |
|---|---|---|---|
| yaconf.directory | "" |
INI_SYSTEM |
|
| yaconf.check_delay | 300 |
INI_SYSTEM |
Краткое разъяснение конфигурационных директив.
yaconf.directory
string
Каталог, в котором размещают все INI-файлы конфигураций. Загружаются
только файлы с расширением .ini.
Подкаталоги загружаются рекурсивно, на глубину до 16 уровней; каждый
из них выступает уровнем ключа, поэтому файл
database.ini, который положили в подкаталог
users/, адресуют как
"users.database". Доступно начиная с Yaconf 1.2.0;
раньше загружались только файлы непосредственно в самом каталоге.
Примеры ниже предполагают, что в настроенном каталоге лежит следующий файл database.ini, а рядом с ним — файл features.ini с настройками отдельных возможностей.
Пример #1 Синтаксис INI-файла
; database.ini
name=production ; скалярное значение
version=PHP_VERSION ; PHP-константы раскрываются
connection_string=${DATABASE_URL} ; переменные окружения раскрываются
options.max_connections=50 ; вложенный ключ хеша
options.timeout=30
; элементы массива, обе записи равнозначны
replicas.0=replica-1.example.com
replicas[]=replica-2.example.com
Пример #2 Пример разделов INI-файла
; features.ini [default] cache_enabled=on rate_limit=100 ; раздел «premium» наследует каждый ключ раздела «default» ; и переопределяет те, которые задаёт заново [premium:default] rate_limit=1000
yaconf.check_delay
int
Интервал в секундах, с которым Yaconf проверяет, изменился ли какой-нибудь
из загруженных INI-файлов, и перезагружает изменившиеся; изменение
определяют сравнением времени изменения каталогов.
Значение 0 заставляет Yaconf проверять при каждом запросе.
Замечание:
Директиву регистрируют только в сборках без ZTS. В потокобезопасных сборках (ZTS) конфигурации загружаются при запуске, автоматическая перезагрузка недоступна; чтобы подхватить изменения, PHP перезапускают.