Yii2 Config
Manage configuration from database, (*1)
Installation
One
The preferred way to install this extension is through composer., (*2)
Either run, (*3)
php composer.phar require --prefer-dist sersid/yii2-config "*"
or add, (*4)
"sersid/yii2-config": "*"
to the require section of your composer.json
file., (*5)
Two
Applying migrations, (*6)
yii migrate --migrationPath=@vendor/sersid/yii2-config/migrations
Three
$config = [
...
'components' => [
...
'config' => [
'class' => 'sersid\config\components\Config',
'coding' => '...', // json of serialize. Default 'json'
'idConnection' => 'db', // The ID of the connection component
'tableName' => '{{%config}}', //Config table name
'idCache' => 'cache', // The ID of the cache component. Default null (no caching)
'cacheKey' => 'config.component', // The key identifying the value to be cached
'cacheDuration' => 360, // The number of seconds in which the cached value will expire. 0 means never expire. Default 0
],
]
];
Usage
Once the extension is installed, simply use it in your code by :, (*7)
Set
Yii::$app->config->set('foo', 'bar');
Yii::$app->config->set('foo', ['bar', 'baz']);
Yii::$app->config->set(['foo' => 'bar']);
Get
Yii::$app->config->get('zyx'); // null
Yii::$app->config->get('zyx', 'default'); // 'default'
Yii::$app->config->get('foo', 'default'); // 'bar'
Yii::$app->config->get(['foo' => 'default']);
Delete
Yii::$app->config->delete('foo');
Yii::$app->config->deleteAll(); // delete all config
Uninstall
Applying migrations, (*8)
yii migrate/down --migrationPath=@vendor/sersid/yii2-config/migrations