PHP code example of shurik2k5 / yii2-settings

1. Go to this page and download the library: Download shurik2k5/yii2-settings library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

shurik2k5 / yii2-settings example snippets


./yii migrate/up --migrationPath=@vendor/shurik2k5/yii2-settings/migrations

'modules' => [
    'settings' => [
        'class' => 'pheme\settings\Module',
        'sourceLanguage' => 'en'
    ],
    ...
],

'components' => [
    'settings' => [
        'class' => 'pheme\settings\components\Settings'
    ],
    ...
]


$settings = Yii::$app->settings;

$value = $settings->get('section.key');

$value = $settings->get('key', 'section');

$value = $this->setting->getOrSet('key', 'defaultValue', 'section', 'string');

$value = $this->setting->getOrSet('section.key', 'defaultValue');

$settings->set('section.key', 'value');

$settings->set('section.key', 'value', null, 'string');

$settings->set('key', 'value', 'section', 'integer');

// Automatically called on set();
$settings->clearCache();


class Site extends Model {
	
	public $siteName, $siteDescription;
	
	public function rules()
	{
		return [
			[['siteName', 'siteDescription'], 'string'],
		];
	}
	
	public function fields()
	{
        return ['siteName', 'siteDescription'];
	}
	
	public function attributes()
	{
        return ['siteName', 'siteDescription'];
	}
}

 $form = ActiveForm::begin(['id' => 'site-settings-form']); 

function actions(){
   return [
   		//....
            'site-settings' => [
                'class' => 'pheme\settings\SettingsAction',
                'modelClass' => 'app\models\Site',
                //'scenario' => 'site',	// Change if you want to re-use the model for multiple setting form.
                //'section' => 'site', // By default use modelClass formname value 
                'viewName' => 'site-settings'	// The form we need to render
            ],
        //....
    ];
}

php composer.phar 

php composer.phar install