为什么这段代码不起作用?
session_start();
// 5 mins in seconds
$inactive = 300;
$session_life = time() - $_session['timeout'];
if($session_life > $inactive)
{
session_destroy(); header("Location: client_login.php");
}
else
{
$_session['timeout']=time();
}
您可以在 if/else 语句之后
var_dump( $_session );
并查看 $_session['timeout']
是否已设置或具有值。 session_destroy()
之后的会话应该是空的。
更新
尝试将
$_session
更改为 $_SESSION
。这是一个特殊的 PHP 变量,大小写可能很重要
检查:
print_r($_SESSION)
和 print_r($_SESSION['timeout'])