问题
I am developing a website with Yii.
I have a button in the page. I need to set a session variable when user clicks it and get the session value when user clicks on another button.
How can I do that?
回答1:
Use CWebUser state methods
//set session variable
Yii::app()->user->setState("state_name", "value");
//check session variables
Yii::app()->user->hasState("state_name");
//get session variable
Yii::app()->user->getState("state_name");
//delete session variable (thanks @Kailas)
Yii::app()->user->setState("state_name", null);
回答2:
you can use CWebUser's setState.
Yii::app()->user->setState('key', 'value');
回答3:
Simple
Yii::app()->session['var'] = $encrypted_txt;
回答4:
$session = Yii::$app->session;
// get a session variable. The following usages are equivalent:
$language = $session->get('language');
// set a session variable. The following usages are equivalent:
$session->set('language', 'en-US');
// remove a session variable. The following usages are equivalent:
$session->remove('language');
// check if a session variable exists. The following usages are equivalent:
if ($session->has('language'))
来源:https://stackoverflow.com/questions/14197462/set-session-in-yii-framework