infrajs / config
Installs: 2 703
Dependents: 32
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Requires
- infrajs/each: ~1
- infrajs/load: ~1
- infrajs/path: ~1
README
Disclaimer: Module is not complete and not ready for use yet.
Для автоматической поддержки сторонних вендоров, кроме infrajs нужно использовать расширение infrajs/config-search
Установка через composer
{ "reqiure":{ "infrajs/config":"~1" } }
Использование
В папке расширения в vendor или в подпапке проекта или в корне проекта создаётся файл .infra.json в который выносятся параметры
{ "name":"Лёха" }
В php затем обращаемся к этим параметрам.
use infrajs\config\Config; $conf = Config::get('имя расширения'); echo $conf['name']; //Лёха
Имя расширения совпадает с имененм папки или с ключём в корневом конфиге
Специальные свойства в .infra.json
{ "dependencies":"event", "require":"script.php", "pub":"propname", "conf":"infrajs\\access\\Access", "off": false, "js": "path/to/js", "tester":"test.php", "testerjs":"test.js" }
Порядок выполнения dependencies
dependencies:'module' - указывает модуль, который должен быть загружен "до". Для php не требуется так как зависимости подключатся при обращении к калссу через autoload. Используется если доступ к модулю осуществляется в js в первом потоке выполнения. Во вложенных вызовах всё в любом случае будет доступно и указывать dependencies не требуется. Секция конфига dependencies будет располагаться до секции конфига указавшего эту зависимость модуля. При всех пробежках сначало будет обработка dependencies и только потом модуля указавшего эту зависимость.
Параметр off
По умолчанию false. true запрещает require и js
Параметр js
Путь до javascript файлов. Свойство обрабатывается infrajs/collect
Параметр tester и testerjs
Свойство обрабатывается infrajs/tester
Подмена и расширение парарметров дефолтного конфига расширения
Переменная Config::$sys предназначена при записи в неё значений, которые должны подменять оригинальные значения из конфига какого-то расширения. Используется с infrajs/update. Config::$sys
- массив с конфигами расширений или двухмерный массив с конкретными параметрами, которые в дальнейшем автоматически сохраняются в !cache/.infra.json
и инициализируются при каждом запросе к серверу. Пример использования в расшиении akiyatkin/catalog-range.