php,如何检测会话ID是死还是活?

Joh*_*ith 5 php session

可能重复:
如何在 30 分钟后使 PHP 会话过期?

如何检测会话ID是死还是活?假设有人登录 - 创建了一个新会话,并且我保存了会话 ID。如果他从其他浏览器登录,我可以确定他登录了两次。但如何检测他是否退出呢?

Bot*_*Bot 5

您需要做的是,当他在新浏览器上登录他的帐户时,找到与他的帐户关联的旧 sessionID 并将其过期。当他单击注销按钮时,您就可以注销该 sessionID。

编辑:

抱歉我读错了你的问题。您想要做的是设置会话超时,因此如果达到超时,您就认为会话已死亡并使其过期。在每个页面请求中,您都将更新过期时间以使其生效。如果他们从另一个浏览器登录,您可以假设旧浏览器中的会话是旧的,并立即使其过期或让它随着超时而过期。

然后,您可以检查页面加载时的会话超时,或者运行一个 cron 脚本,该脚本将遍历会话数据库并使所有旧会话过期。

  • @feeela 抱歉,我读他的问题时只希望 1 个会话处于活动状态。 (2认同)