如果用户空闲时间长达10分钟,我还需要销毁会话,以及如何查找用户上次活动的时间,
if ($_SESSION['last_activity'] > 600)
{
session_unset();
session_destroy();
}
这是正确的方法..
答案 0 :(得分:2)
使用session.gc_maxlifetime
Set session.gc_maxlifetime = 600 in phi.ini
或
ini_set('session.gc_maxlifetime',600); // in your script
答案 1 :(得分:0)
//on pageload
session_start();
$idletime=60;//after 60 seconds the user gets logged out
if (time()-$_SESSION['timestamp']>$idletime){
session_destroy();
session_unset();
}else{
$_SESSION['timestamp']=time();
}
//on session creation
$_SESSION['timestamp']=time();
答案 2 :(得分:0)
在重置时间之前检查活动:
if (isset($_SESSION['last_activity']) && $_SESSION['last_activity'] > 600){
session_unset();
session_destroy();
}else{
$_SESSION['last_activity'] = time();
}