2011-01-04 9 views
1

PHPでユーザがセッションタイムアウトを設定することは可能ですか?ユーザがphp session timeoutを設定しました

例:2人のユーザーが私のサイトに登録されています。私は各ユーザが独自のセッションタイムアウトを設定できるようにしたい。

+1

関連:[30分後にPHPセッションを期限切れにする方法は?](http://stackoverflow.com/questions/520237/how-do-i-expire-a-php-session-after-30-minutes/1270960#1270960) – Gumbo

答えて

4

はい、ユーザーごとにカスタムセッションタイムアウトを設定できます。あなたはHow do I expire a PHP session after 30 minutes?に記載の方法を使用する代わりに、絶対的な有効期限を保存することができます:ここでは

// set expiration time 
$_SESSION['EXPIRES'] = time() + $customSessionLifetime; 

// validate session 
if (isset($_SESSION['EXPIRES']) && (time() < $_SESSION['EXPIRES'])) { 
    // session still valid; update expiration time 
    $_SESSION['EXPIRES'] = time() + $customSessionLifetime; 
} else { 
    // session invalid or expired 
    session_destroy(); 
    session_unset(); 
} 

$customSessionLifetimeは、ユーザーごとに別々に設定することができます。その値がsession.gc_maxlifetimeおよびsession.cookie_lifetime(セッションIDにCookieを使用する場合)以下であることを確認してください。

+0

ありがとうございます。やってみます。 – brpaz

関連する問題