如何使用Zend框架关闭会话

时间:2012-06-16 10:48:41

标签: php zend-framework zend-studio zend-form-element

例如:

http://example.com/login

这是我的网站,一旦我登录并使用用户页面example.com/user,当我在www.example.com/logout之外登录时,会话将被关闭。

但是如果用户在使用example.com/user时没有登录,则不应该提供详细信息,因为我希望关闭会话,并且它也会影响不同的浏览器。

怎么做?

1 个答案:

答案 0 :(得分:0)

Zend session management可以通过'hop'或基于时间来选择expire命名空间,您也可以通过Zend_Session :: writeclose写入锁定会话或使用Zend_Session :: destroy()将其销毁(参考:http://framework.zend.com/manual/en/zend.session.global_session_management.html

破坏():

  

destroy(bool $ remove_cookie = true,bool $ readonly = true)   Zend_Session :: destroy()销毁与当前会话关联的所有持久数据。但是,PHP中的变量不会受到影响,因此您的命名空间会话(Zend_Session_Namespace的实例)仍然可读。要完成“注销”,请将可选参数设置为TRUE(默认值)以删除用户代理的会话ID cookie。可选的$ readonly参数删除了创建新Zend_Session_Namespace实例和Zend_Session方法写入会话数据存储的功能。

writeClose():

  

writeClose($ readonly = true)   关闭会话,关闭写入并从后端存储机制中分离$ _SESSION。这将完成此请求的内部数据转换。可选的$ readonly布尔参数可以通过在任何通过Zend_Session或Zend_Session_Namespace写入会话的尝试中抛出异常来删除写访问。