2017-06-01 49 views
0

我想在用户不活动3小时后过期PHP会话。因此我使用下面的代码。如何在3小时不活动后过期PHP会话?

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

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

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

在此先感谢

+2

[如何在30分钟后过期PHP会话?](https://stackoverflow.com/questions/520237/how-do-i-expire-a-php-session-after-30-分钟) –

回答

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。