当您在某个限制后(例如 30 分钟左右)使会话过期时,我在 Internet 上找到了很多教程,但是我想在没有活动的情况下使会话过期,引用著名的 SO 问题,解决方案很简单:
if (isset($_SESSION['LAST_ACTIVITY'])
&& (time() - $_SESSION['LAST_ACTIVITY'] > 1800)) {
// last request was more than 30 minutes ago
session_unset(); // unset $_SESSION variable for the run-time
session_destroy(); // destroy session data in storage
}
$_SESSION['LAST_ACTIVITY'] = time(); // update last activity time stamp
但我必须更新$_SESSION['LAST_ACTIVITY']
每个请求吗?
预先假设的答案是肯定的,但是我有一个包含 200 多个 php 页面的大站点,并且$_SESSION['LAST_ACTIVITY']
每次请求都更新非常忙碌。
有没有其他方法可以做到这一点?所有文件中唯一的共同点是一个用于数据库连接的配置文件。