我在yii中有一个Session variable
,它对应于特定的用户状态
Yii::app()->user->setState('mycustomvar', 550);
这样我就可以将此变量作为
Yii::app()->user->mycustomvar
我怎样unset
只有这个变量?
我有一个像这样的解决方案
Yii::app()->session->remove(Yii::app()->user->getStateKeyPrefix() . 'mycustomvar');
这是一种正确的方法吗?
答案 0 :(得分:0)
Yii::app()->user->setState('mycustomvar', null);
或者在设置变量时使用的其他任何初始/默认值。
见the docs。每当您将变量设置为默认值(null
,除非明确设置为其他值)时,它将从会话中删除。
编辑:
顺便说一句,您也可以通过魔术方法设置它,即:
Yii::app()->user->mycustomvar = 550;
答案 1 :(得分:0)
我终于使用这个
遇到了一个解决方案Yii::app()->session->remove(Yii::app()->user->getStateKeyPrefix() . 'mycustomvar');