我想用 Zend_Auth 和 Zend_Session 来保存用户 session 和登录信息
什么是实现以下项目的最简单和最好的方法:
1-Disallow multiple concurrent logins for the specific user
2-List all of all user currently logged in
3-Admin could logout of specific user or destroy specific session
是否有任何特殊的 ZF 或 PHP API 或库可以执行上述操作?
谢谢
最佳答案
最简单的方法是使用 Zend_Session_SaveHandler_DbTable或创建自定义 session SaveHandler 实现 Zend_Session_SaveHandler_Interface .
您可以在 application.ini
中激活它:
resources.session.saveHandler.class = "Zend_Session_SaveHandler_DbTable"
resources.session.saveHandler.options.name = "session"
resources.session.saveHandler.options.primary.session_id = "session_id"
resources.session.saveHandler.options.primary.save_path = "save_path"
resources.session.saveHandler.options.primary.name = "name"
resources.session.saveHandler.options.primaryAssignment.sessionId = "sessionId"
resources.session.saveHandler.options.primaryAssignment.sessionSavePath = "sessionSavePath"
resources.session.saveHandler.options.primaryAssignment.sessionName = "sessionName"
resources.session.saveHandler.options.modifiedColumn = "modified"
resources.session.saveHandler.options.dataColumn = "session_data"
resources.session.saveHandler.options.lifetimeColumn = "lifetime"
参见 Session Application resource docs了解更多信息。
关于php - 使用 Zend_Auth 和 Zend_Session 管理用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2573730/