Small but powerful Config package. Suitable for basic config handling with plain arrays or various config files, whilst remaining easy to use when scaling for use in larger applications with more complex configuration setups.
PHP 5.5+
. Master is CI tested on the following versions of PHP: 5.5
, 5.6
, 7.0
, 7.1
, and HHVM
.
$ composer require glennmcewan/config
or add the package name to the require block in your composer.json
file:
{
"require": {
"glennmcewan/config": "dev-master"
}
}
This package can still be used without Composer -- at the cost of no included autoloader.
- Creating a new instance of the Config Manager
$config = new Glenn\Config\Manager;
- Setting Config Values
$config->set('name', 'Glenn');
$config->set('age', 18);
$config->set('languages', ['English', 'Spanish']);
// TODO: setting array of keys in bulk. This means re-factoring @setFromParser. It's a smelly method anyway, remove it and instead add a @setFromArray or something.
- Getting Config values
echo $config->get('name'); // 'Glenn'
echo $config->get('age'); // 18
echo $config->get('languages'); // [0 => 'English', 1 => 'Spanish']
echo $config->get('gender'); // null
echo $config->get('gender', 'male'); // 'male'
- Changing Config values
$config->set('name', 'Glenn');
echo $config->get('name'); // 'Glenn'
$config->set('name', 'Dave');
echo $config->get('name'); // 'Dave'