【发布时间】:2014-09-30 08:44:10
【问题描述】:
我在我的应用程序中启用了这样的会话(在config.php、components 部分):
'session' => array(
'class' => 'system.web.CDbHttpSession',
'connectionID' => 'db',
'timeout' => 86400,
'sessionName' => 'SOMEABSTRACT_PHPSESSID',
),
在UserIdentity 我尝试这样做:
$_SESSION['userid'] = $model->id;
这意味着我将在我登录用户后设置该新会话。但是,当我尝试访问 $_SESSION['userid'] 或只是 $_SESSION 以进行阅读时,我得到了这个异常:
Undefined variable: _SESSION
这是我尝试访问此会话数组的方式:
echo '<pre>';
die(var_dump($_SESSION, $_SESSION['userid']));
我对此没有任何线索,所以我对这个问题的两个简单问题是:
- 为什么只有在启用 Yii 的会话并且
autoStart => true时才会发生这种情况? - 如何解决这个问题?
PS 我需要这个用于 CometChat 与 Yii 框架的集成。
【问题讨论】:
-
在配置中,会话自动启动是否为真..?
-
是的。当我输入
session_start()时,我根本没有得到$_SESSION['userid']。但是如果我在尝试设置会话时设置session_start(),我会得到这个异常:A session had already been started - ignoring session_start() -
@NaincyGupta - 默认为
true。 -
面临同样的问题。如果您找到解决方案,请告诉我。