Re: Solution for session_regenerate_id() issues

From: Date: Mon, 17 Mar 2014 02:22:34 +0000
Subject: Re: Solution for session_regenerate_id() issues
References: 1 2 3 4 5 6 7  Groups: php.internals 
Request: Send a blank email to internals+get-73202@lists.php.net to get a copy of this message
On Mon, Mar 17, 2014 at 11:15 AM, Yasuo Ohgaki <yohgaki@ohgaki.net> wrote: > // ** set timeout flag ** > if ($_SESSION['LAST_REGENERATE'] < time() + 600) { > $_SESSION['VALID_UNTIL'] = time() + 60; // Shorter is better, but rather > large value is set for lost radio/hand over/etc. Old session is allowed to > use as valid session for 60 seconds. > session_commit(); // Need to save above data in old session. > session_start(); > $_SESSION['LAST_REGENERATE'] = time(); // Update regenerate time here. > session_regenerate_id(); // New session ID and old session data with old > session ID is left > unset($_SESSION['VALID_UNTIL']; // This session should not be deleted > later. > } > BTW, $_SESSION['LAST_REGENERATE'] = time(); // Update regenerate time here. This is bad code for new session save handler. This should be $_SESSION['NEXT_REGENERATE'] = time()+600; // Update regenerate time here. This way, unneeded session data writes can be avoided. Regards, -- Yasuo Ohgaki yohgaki@ohgaki.net

« previous php.internals (#73202) next »