如何在3小时不活动后使PHP会话失效?

时间:2017-06-01 11:15:25

标签: php session

我想在用户不活动3小时后使PHP会话失效。因此我使用以下代码。

ini_set('session.gc_maxlifetime', '10800');
ini_set('session.cookie_lifetime', '10800');

但我看不出它按预期工作。无论我是否积极使用该应用程序,它将在3小时后到期。我想从应用程序中实现这一点。不是来自php.ini文件。

如何在用户不活动3小时后使用PHP会话过期并从应用程序注销用户?

提前致谢

1 个答案:

答案 0 :(得分:0)

你可以在php中做类似的事情:

<?php
 session_start();
 $duration = (DURATION * 60);

 if(isset($_SESSION['started']))
 {

 $showform = 0;
 $time = ($duration - (time() - $_SESSION['started']));
 if($time <= 0)
 {
    unset($_SESSION['count']);
    unset($_SESSION['offender']);
    $showform == 1;
 }
 }
 else
 {
 $_SESSION['started'] = time();
 }
?>

设置持续时间并在持续时间到期后取消设置。将持续时间文本替换为分钟计数,例如3小时= 180分钟,因此将180放在那里。