/** * {@inheritdoc} */ public function regenerate($destroy = false, $lifetime = null) { if (!$this->started) { $this->start(); } $this->metadataBag->stampNew($lifetime); $this->id = $this->generateId(); return true; }
/** * {@inheritdoc} */ public function regenerate($destroy = false, $lifetime = null) { if (null !== $lifetime) { ini_set('session.cookie_lifetime', $lifetime); } if ($destroy) { $this->metadataBag->stampNew(); } return session_regenerate_id($destroy); }
/** * {@inheritdoc} */ public function regenerate($destroy = false, $lifetime = null) { if (null !== $lifetime) { ini_set('session.cookie_lifetime', $lifetime); } if ($destroy) { $this->metadataBag->stampNew(); } $isRegenerated = session_regenerate_id($destroy); // The reference to $_SESSION in session bags is lost in PHP7 and we need to re-create it. // @see https://bugs.php.net/bug.php?id=70013 $this->loadSession(); return $isRegenerated; }
/** * {@inheritdoc} */ public function regenerate($destroy = false, $lifetime = null) { if (!$this->started) { $this->start(); } if ($lifetime !== null) { $this->options['cookie_lifetime'] = $lifetime; } if ($destroy) { $this->metadataBag->stampNew($lifetime); $this->handler->destroy($this->id); } $this->id = $this->generator->generateId(); return true; }
/** * {@inheritdoc} */ public function regenerate($destroy = false, $lifetime = null) { if (null !== $lifetime) { ini_set('session.cookie_lifetime', $lifetime); } if ($destroy) { $this->metadataBag->stampNew(); } $ret = session_regenerate_id($destroy); // workaround for https://bugs.php.net/bug.php?id=61470 as suggested by David Grudl session_write_close(); $backup = $_SESSION; session_start(); $_SESSION = $backup; return $ret; }
/** * {@inheritdoc} */ public function regenerate($destroy = false, $lifetime = null) { if (!$this->started) { $this->start(); } if ($lifetime !== null) { $this->options['cookie_lifetime'] = $lifetime; } if ($destroy) { $this->metadataBag->stampNew($lifetime); $this->handler->destroy($this->id); } else { $this->write(); } $this->handler->close(); $this->id = $this->generator->generateId(); $this->handler->open(null, $this->name); // read is required to make new session data at this point $this->handler->read($this->id); return true; }
/** * {@inheritdoc} */ public function regenerate($destroy = false, $lifetime = null) { // Cannot regenerate the session ID for non-active sessions. if (PHP_VERSION_ID >= 50400 && \PHP_SESSION_ACTIVE !== session_status()) { return false; } // Check if session ID exists in PHP 5.3 if (PHP_VERSION_ID < 50400 && '' === session_id()) { return false; } if (null !== $lifetime) { ini_set('session.cookie_lifetime', $lifetime); } if ($destroy) { $this->metadataBag->stampNew(); } $isRegenerated = session_regenerate_id($destroy); // The reference to $_SESSION in session bags is lost in PHP7 and we need to re-create it. // @see https://bugs.php.net/bug.php?id=70013 $this->loadSession(); return $isRegenerated; }
/** * {@inheritdoc} */ public function regenerate($destroy = false, $lifetime = null) { if (null !== $lifetime) { ini_set('session.cookie_lifetime', $lifetime); } if ($destroy) { $this->metadataBag->stampNew(); } $ret = session_regenerate_id($destroy); // workaround for https://bugs.php.net/bug.php?id=61470 as suggested by David Grudl if ('files' === $this->getSaveHandler()->getSaveHandlerName()) { session_write_close(); if (isset($_SESSION)) { $backup = $_SESSION; session_start(); $_SESSION = $backup; } else { session_start(); } $this->loadSession(); } return $ret; }