身份验证后的会话有一个奇怪的问题。
整个身份验证部分有效,之后麻烦来了:
$result = $this->getAuthService()->authenticate();
if ($result->isValid()) {
$storage = $this->getAuthService()->getStorage();
$storage->write(($this->getAuthService()
->getAdapter()
->getResultRowObject(array(
'email_utilisateur',
'password_utilisateur',
))));
$redirect = 'success';
}
现在,我已登录,并且电子邮件+密码存储在“Zend_Auth”键中(不要注意我存储密码btw,这是示例^^)。
但是当我进入另一个页面时(即使它是相同的),我的会话密钥“Zend_auth”被破坏了,并且我有一个不完整的 PHP 对象......
Array
(
[__ZF] => Array
(
[_REQUEST_ACCESS_TIME] => 1369667659.7526
)
[Zend_Auth] => __PHP_Incomplete_Class Object
(
[__PHP_Incomplete_Class_Name] => Zend\Stdlib\ArrayObject
)
)
那么,知道为什么更改页面会破坏我的会话变量吗?
在此先感谢,我在这个问题上花了大约 5 个小时,测试东西等等......
编辑 28/05/2013 :
所以,我还是没有找到。无论如何,被破坏的对象是 Zend\Stdlib\ArrayObject。这个数组对象被破坏的一个原因是会话在包含 avec Zend\Stdlib\ArrayObject 之前开始。我会尝试弄清楚,但如果这是原因,那么这是框架的错误。顺便说一句,我正在使用 ZF 2.2。