Поведение функций зависит от установок в файле php.ini.
| Имя | По умолчанию | Место изменения | Список изменений |
|---|---|---|---|
| yaf.library | INI_ALL |
||
| yaf.action_prefer | 0 | INI_ALL |
|
| yaf.lowcase_path | 0 | INI_ALL |
|
| yaf.use_spl_autoload | 0 | INI_ALL |
|
| yaf.forward_limit | 5 | INI_ALL |
|
| yaf.name_suffix | 1 | INI_ALL |
|
| yaf.name_separator | INI_ALL |
||
| yaf.cache_config | 0 | INI_SYSTEM |
|
| yaf.environ | product | INI_SYSTEM |
|
| yaf.use_namespace | 0 | INI_SYSTEM |
Краткое разъяснение конфигурационных директив.
yaf.library
string
Путь к каталогу, в котором Yaf_loader станет искать глобальную библиотеку.
yaf.action_prefer
int
Требуется ли интерпретировать в элементе PATH_INFO путь с единственным сегментом как контроллер или действие.
При установке значения On путь интерпретируется как название действия.
yaf.lowcase_path
int
Приводить ли путь к нижнему регистру при автозагрузке классов.
yaf.use_spl_autoload
int
При установке значения On автозагрузчик Yaf_Loader вернёт false,
если не найдёт класс, и вернёт управление для вызова следующей функции автозагрузки.
При установке значения Off автозагрузчик Yaf_Loader
вернёт true, если не найдёт класс, и сразу прервёт автозагрузку классов с ошибкой.
Замечание:
Yaf регистрирует загрузчик классов при создании экземпляра класса Yaf_Application, поэтому остальные автозагрузчики, зарегистрированные до инстанциации этого класса, запустятся до срабатывания метода Yaf_Loader::autoload().
Со значением по умолчанию — Off —
метод Yaf_Loader::autoload() возвращает true независимо от результата поиска класса.
yaf.forward_limit
int
Предельное количество перенаправлений. Значение по умолчанию — 5: предельная глубина стека перенаправлений.
Ограничение глубины стека защищает от бесконечного рекурсивного вызова метода Yaf_Controller_Abstract::forward().
yaf.name_suffix
int
При установке значения On автозагрузчик Yaf_Loader распознаёт MVC-классы по суффиксу в названии класса.
При установке значения Off автозагрузчик Yaf_Loader опирается на префикс в названии класса.
yaf.name_separator
string
Непустое значение разделяет название класса на две части: префикс и суффикс. Автозагрузчик Yaf_Loader распознает MVC-роль класса по суффиксу, а название MVC-компонента — по префиксу.
С разделителем "_" автозагрузчик Yaf_Loader распознает название Index_Controller как класс контроллера, а IndexController — как стандартный класс.
yaf.cache_config
int
При установке значения On и передаче в конструктор класса Yaf_Application аргумента с путём к конфигурационному ini-файлу результат компиляции ini-файла кешируется в PHP-процессе.
Замечание:
Модуль Yaf проверяет время модификации файла конфигурации и перекомпилирует ini-файл, если значение mtime изменилось с момента последней компиляции.
Модуль Yaf обрабатывает путь к ini-файлу как ключ закешированной записи, поэтому лучше указывать полные, абсолютные пути, чтобы два приложения, которые работают с ini-файлами с одинаковыми названиями, но разным содержанием, не конфликтовали между собой.
yaf.environ
string
Значение по умолчанию — "product". По значению директивы модуль Yaf определяет, какую секцию конфигурационного ini-файла требуется загрузить.
При установке значения "product" модуль Yaf считает ini-файл, путь к которому передали в первый параметр конструктора класса Yaf_Application, и загрузит секцию с названием "product" как окончательную конфигурацию приложения Yaf_Application.
yaf.use_namespace
int
При установке значения On названия классов модуля Yaf строятся по правилам именования классов в пространствах имён.
Например:
Yaf_Route_Rewrite => \Yaf\Route\Rewrite Yaf_Request_Http => \Yaf\Request\Http
Yaf_Controller_Abstract => \Yaf\Controller_Abstract Yaf_Route_Static => \Yaf\Route_Static