我希望我的用户登录一个星期,而不必再次登录。我在此页面How to change the session timeout in PHP?上实现了该解决方案,但是该解决方案无法正常工作。一段时间不活动后,我仍然注销(不确定一天多长时间,但一天至少几次)。
ini_set('session.gc_maxlifetime', 604800);
session_set_cookie_params(604800);
ob_start();
session_start();
$now = time();
if (isset($_SESSION['discard_after']) && $now > $_SESSION['discard_after']) {
session_unset();
session_destroy();
session_start();
}
$_SESSION['discard_after'] = $now + 604800;