Manage configuration from database
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist sersid/yii2-config "*"
or add
"sersid/yii2-config": "*"
to the require section of your composer.json
file.
Applying migrations
yii migrate --migrationPath=@vendor/sersid/yii2-config/migrations
$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
],
]
];
Once the extension is installed, simply use it in your code by :
Yii::$app->config->set('foo', 'bar');
Yii::$app->config->set('foo', ['bar', 'baz']);
Yii::$app->config->set(['foo' => 'bar']);
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']);
Yii::$app->config->delete('foo');
Yii::$app->config->deleteAll(); // delete all config
Applying migrations
yii migrate/down --migrationPath=@vendor/sersid/yii2-config/migrations
Comments