我正在保存用户的每次登录和注销操作(事件发生时的当前时间戳)。 现在我需要处理这个场景,即用户没有注销,但他的会话到期了。
解决这个问题的最佳方法是什么?
谢谢, 麦克
答案 0 :(得分:0)
您可以编写自己的session handler,它允许您编写自己的GC处理程序。 PHP系统将根据当前PHP configuration自动调用此GC处理程序。您可以使用它来清理登录会话并触发注销。
但是,您不必编写自己的PHP会话处理程序。它容易出错并且不可取。您可以保存并检查数据库中的最后一个用户操作时间,而不是检查超时会话。然后你可以使用一个小的脚本/函数,它将被定期调用并检查最后一个用户操作是否已经很久了(并且用户还没有注销)。找到此类用户后,您可以执行已实施的注销操作。