我只想在我的项目中延长php会话时间。从一些文档中我发现了这段代码:
ini_set('session.gc_maxlifetime', 2*60*60); //2 hours
默认情况下,我认为它是30分钟。但我需要增加这一点。因此,对于测试,我将此时间设置为仅2分钟并尝试了我的代码。我等了2分钟,但我没有过期。
我希望我的会话超过5个小时。但我的代码不起作用。我在我的php文件中而不是ini_set
php_ini
答案 0 :(得分:2)
//服务器应保持会话数据至少5小时
ini_set('session.gc_maxlifetime', 18000);
//每个客户端应该记住他们的会话ID为完全5小时
session_set_cookie_params(18000);
session_start(); // ready to go!
,然后强>
$now = time();
if (isset($_SESSION['discard_after']) && $now > $_SESSION['discard_after']) {
// this session has worn out its welcome; kill it and start a brand new one
session_unset();
session_destroy();
session_start();
}
// either new or old, it should live at most for another hour
$_SESSION['discard_after'] = $now + 18000;