mezon/conf

Small conf routine

1.2.3 2023-03-02 06:04 UTC

This package is auto-updated.

Last update: 2024-04-30 00:28:13 UTC


README

Configuration

Mezon has it's own routine for working with configs. It can be accesed with a set of functions, wich are described below.

Getting access to the key in config can be done with Conf::getValue($route, $defaultValue = false) function. It returns config value with route $route and return $defaultValue if this key was not found. For example:

$value = Conf::getValue('res/images/favicon', 'http://yoursite.com/res/images/favicon.ico');

Setting values for the config key can be done by calling Conf::setConfigValue($route, $value) or Conf::addConfigValue($route, $value) function. The main difference between these two functions is that the first one sets scalar key, and the second one adds element to the array in config. Here is small example:

Conf::setConfigValue('res/value', 'Value!');
var_dump(Conf::getValue('res/value')); // displays 'Value!' string

Conf::addConfigValue('res/value', 'Value 1!');
Conf::addConfigValue('res/value', 'Value 2!');
var_dump(Conf::getValue('res/value')); // displays array( [0] => 'Value 1!' , [1] => 'Value 2!' )

You also can use typed versions of these methods:

Conf::getValueAsArray(...);
Conf::getValueAsObject(...);
Conf::getValueAsString(...);

Conf::setConfigArrayValue(...);
Conf::setConfigObjectValue(...);
Conf::setConfigStringValue(...);

You can set multyple values to the config:

// here $settings is an associative array
Conf::setConfigValues(array $settings);

Or you can read config from JSON:

Conf::loadConfigFromJson(string $pathToConfig);

If you are not shure that the key exists, then you can check it:

Conf::setConfigValue('res/value', 'Value!');

var_dump(Conf::configKeyExists('res')); // true
var_dump(Conf::configKeyExists('res2')); // false
var_dump(Conf::configKeyExists('res/value')); // true

You can also able to delete config key

Conf::setConfigValue('res/value', 'Value!');
Conf::deleteConfigValue('res/value');
var_dump(Conf::configKeyExists('res/value')); // false
var_dump(Conf::configKeyExists('res')); // also false

Or clear the entire config:

Conf::clear();

That's all you need to know about config read/write.