Config::Set не перезаписует конфиг :(

Хочу менять настройки плагина из админки
есть простой конфиг:
/**
 * Конфиг
 */

$config = array();
Config::Set('router.page.myplugin', 'PluginMyplugin_ActionMyplugin'); 

$config['myvar']   = 'myvar'; 

return $config;


в экшене плагина пишу вот что:

protected function EventAdmin() {
    	if (isPost('submit_config')) {
    		$this->Security_ValidateSendForm();
    		Config::Set('plugin.myplugin.myvar', $_POST['myvar']);
    	}
    	$config = Config::Get('plugin.myplugin');
    	$this->Viewer_Assign('config', $config);
    }

$_POST приходит проверял, а в конфиге переменная не перезаписуется. Что то я не так делаю.
З.Ы.: И по ходу еще вопрос по php — в методе SET есть такая конструкция $value['$root$'] — что это значит, впервые такое встречаю.

2 комментария

avatar
Re: З.Ы. livestreet.ru/blog/5082.html
про первое не скажу, должно быть все ок. может с именем поля накосячил?
  • 1d10t
  • 0
avatar
Ок, т.е. Config::Set не делает запись в конфиг а только устанавливает это значение. Т.е. конструкцию можно юзать либо в конфиге, либо в init() плагина. А как быть с пользовательскими настройками из админки? Т.е. пользователь ввел значения и они остались в конфиге до следующего изменения. Можно конечно написать свой config.ini и с помощью parse_ini_file() вытягивать и записывать значения, но это уже костыль, имхо.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.