0

我正在维护一个 Yii 应用程序,当我打印 Yii 会话时,它看起来像这样:

Array ( [cb35f057aa124d26e8793014875ce939_ id] => 1 [cb35f057aa124d26e8793014875ce939 _name] => admin [cb35f057aa124d26e8793014875ce939__states] => Array() [cb35f057aa124d26e8793014875ce939email] => webmaster@example.com [cb35f057aa124d26e8793014875ce939username] => admin [cb35f057aa124d26e8793014875ce939create_at] => 2013-01-14 07:44:22 [cb35f057aa124d26e8793014875ce939lastvisit_at] => 2013-09-13 06:09:17 [cb35f057aa124d26e8793014875ce939state_id] => 1)

我不知道在哪里可以找到这个数字 cb35f057aa124d26e8793014875ce939 以便我可以在我的方法中使用会话数据。它看起来像固定的。有人知道它是什么吗?

4

4 回答 4

0

这不是会话 ID,这是应用程序特定的前缀,可以通过 getStateKeyPrefix() 找到

于 2015-02-03T15:50:56.760 回答
0

您应该通过 Yii API 使用会话变量,即

Yii::app()->session['var'] = 'something'; //setting a value
echo Yii::app()->session['var']; //reading a value
于 2013-09-13T08:38:16.027 回答
0

上述数字可能是通过setStateKeyPrefix()在代码中某处调用函数来设置的。

下面是函数的解释:

setStateKeyPrefix() -为存储用户会话数据的会话变量的名称设置前缀。

此外,您可以使用getStateKeyPrefix()功能查看天气或未设置前缀。

于 2015-08-21T14:31:11.030 回答
-1

前缀是 php session id,你可以通过

Yii::app()->session->getSessionID();
于 2013-09-13T08:53:44.210 回答