我正在使用Zend Framework编写应用程序,我需要能够按需注销用户。该应用程序将收到一个请求,其中包含映射到SessionIds的某种ID,它将结束/过期这些会话。我知道如何进行映射,但那又如何呢?如何结束具有ID的会话?
我发现有Zend_Session::setId()
,但我认为这不符合我想做的事情。
我有一个想法就是删除与给定会话相关联的文件,因为它们被命名为sess_ [sessionId],但我想这是一种难看的方式。
答案 0 :(得分:2)
您可以将会话信息保存到数据库。它将与会话ID相关联。
然后创建一个插件,检查数据库行是否仍然存在。如果没有,则执行Zend_Auth::getInstance()->clearIdentity()
将用户注销的方法将从DB中删除会话。
答案 1 :(得分:0)
根据会话的结构以及您要清楚的内容,有许多方法可以销毁,过期和取消设置Zend_Sessions。有关详细信息,请参阅http://framework.zend.com/manual/1.12/en/zend.session.html。
如果您将来可以提供更多详细信息,或者可能会提供一些说明您问题的代码,我相信社区会更乐意提供更好的答案。
祝你好运。