new-inventor/config-tool

Config tool for projects

1.1.1 2016-10-14 13:04 UTC

This package is not auto-updated.

Last update: 2024-04-27 16:14:42 UTC


README

#Config tool

Утилита для работы работы с настройками в виде массива.

##Установка

через composer

composer require new-inventor/config-tool

##Инициализация

  1. Config::getInstance();
  2. 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 Удаляет данные по пути