我使用Yii2框架来完成我的PHP项目。但是我遇到了一些麻烦。这是我的代码。 首先,通过yii2 session api设置会话变量,如下所示:
Yii::$app->session->set('test', 123);
然后在其他行动中,我希望得到这个变量:
var_dump(Yii::$app->session);
@session_start();
var_dump($_SESSION);
var_dump(Yii::$app->session['test']);
但我找到了结果:
object(yii\web\Session)#109 (6) {
["flashParam"]=>
string(7) "__flash"
["handler"]=>
NULL
["_cookieParams":"yii\web\Session":private]=>
array(1) {
["httponly"]=>
bool(true)
}
["_hasSessionId":"yii\web\Session":private]=>
NULL
["_events":"yii\base\Component":private]=>
array(0) {
}
["_behaviors":"yii\base\Component":private]=>
NULL
}
array(2) {
["__flash"]=>
array(0) {
}
["test"]=>
int(123)
}
int(123)
我想知道为什么Yii :: $ app-> session不能转储密钥的值' test'在第一个var_dump。
答案 0 :(得分:0)
用于检索会话条目尝试使用session->get()
$app->session->get('test') ;
例如:
var_dump( $app->session->get('test') );
请参阅本指南,了解一些示例和建议http://www.yiiframework.com/doc-2.0/guide-runtime-sessions-cookies.html