使用Zend框架记住经过身份验证的会话
使用Zend_Auth适配器之一在应用程序中设置会话管理后,您可能希望允许用户保持登录状态。您需要做的是在Zend_Session对象中设置一些配置选项。Zend_Auth使用Zend_Session作为操纵$_SESSION变量的面向对象的方式。您对Zend_Session对象所做的任何更改都会影响Zend_Auth对象,只要您在启动会话之前设置这些选项即可。
有许多可用的配置选项,但是出于我想要的效果,我只需要更改以下选项即可。您可能不需要设置所有这些功能,但这给了我最佳的跨浏览器性能。
[live] sessions.name = SESS_NAME sessions.strict = off sessions.use_only_cookies = on sessions.cookie_lifetime = 12345678 sessions.remember_me_seconds = 12345678 sessions.gc_maxlifetime = 1234567812345678是秒数,大约是6个月。
您可以使用以下代码将这些配置选项加载到会话中。
//加载配置文件 $configuration = new Zend_Config_Ini('config.ini', 'live'); //加载配置文件 into the session options. Zend_Session::setOptions($configuration->sessions->toArray());
将此放入您的引导程序文件中,以便在您的Zend_Auth调用之前加载它。现在,您应该发现您的用户能够关闭浏览器,并在会话保持原样的情况下重新打开浏览器。