new-inventor / config-tool
Config tool for projects
Requires
- php: >=5.4.0
- new-inventor/php-type-checker: ^2.0
Requires (Dev)
- phpunit/phpunit: 5.1.*
This package is not auto-updated.
Last update: 2025-01-18 20:14:06 UTC
README
#Config tool
Утилита для работы работы с настройками в виде массива.
##Установка
через composer
composer require new-inventor/config-tool
##Инициализация
Config::getInstance()
;Config::init($folder)
;
Впервом случае создастся объект с пустыми настройками. Во втором - загрузятся настройки из всех файлов указанных в массиве.
Если вызвать метод init($folder)
еще раз, произойдет переинициализация объекта настроек.
##Методы
###get Метод get получает значение из объекта настроек.
$res = Config::get(['test', 'test', 0], 123);
$res = Config::get('test', 123);
$res = Config::get(['test', 'test', 0]);
$res = Config::get('test');
$res = Config::get('test.test.test', 123);
$res = Config::get(1, 123);
Первым параметром может быть любой валидный ключ массива. также можно передавать одномерный массив ключей массива который будет воспринят как путь от корня настроек.
Второй параметр - значение по умолчанию для ненайденного элемента. Если не задан, возвращается null
###set Метод set устанавливает значение в объекте настроек.
$res = Config::set(['test', 'test', 0], 123);
$res = Config::set('test', 123);
$res = Config::set('test.test.test', 123);
$res = Config::set(1, 123);
Первым параметром может быть любой валидный ключ массива. также можно передавать одномерный массив ключей массива который будет воспринят как путь от корня настроек. Второй параметр - устанавливаемое значение.
Если в пути до устанавливаемого значения встречается ключ, значение которого не является массивом или неопределенным значением то бросается исключение.
###merge Объединяет массив по пути с переданным массивом.
###delete Удаляет данные по пути