Zend_Session :: rememberMe()难题:如果有插件已经使用会话,那么放在哪里?

时间:2011-09-13 15:52:26

标签: php zend-framework session

我的大多数网址都有一个语言组件,可以帮助我确定显示内容的语言,但其他一些语言不能。该网站通过cookie记住用户的语言。这都是在自定义插件Application_Plugin_Locale中处理的,该插件在构造时检测到语言或使用现有会话中的语言。

问题:此插件显然在任何操作之前运行,因为大多数操作都依赖于语言。这使我无法使用Zend_Session :: rememberMe(),因为这需要在会话启动之前发生。此外,在显示登录表单时,我检查天气已经发生了Zend_Auth的登录(在我想要之前也开始我的会话)。

关于如何解决这个问题的任何想法?

2 个答案:

答案 0 :(得分:0)

我认为你可以使用你的application.ini(ZF 1.8 +)

resources.session.remember_me_seconds = 864000

答案 1 :(得分:0)

我最终更改了应用程序结构以避免这种情况,并且让每个URL都包含该语言,以便我不需要检测它。