Sessie variabelen

Het session object heeft een static functie initialize, deze controleert of de sessie reeds bestaat en pakt de data uit met unserialize :

Session::initialize();

Opvragen van de session instance :

$session = Session::instance();

De session klasse :

class Session
{
  private static $instance;

public static function initialize() { if ($_SESSION['session']) { $session = unserialize($_SESSION['session']); } if ($session instanceof Session) { self::$instance = $session; } elseif (!$session instanceof Session) { self::$instance = new Session; } register_shutdown_function(array('Session', 'shutdown')); }

public static function instance() { return self::$instance; }

public static function destroy() { unset($_SESSION['session']); self::$instance = null; }

public static function shutdown() { $_SESSION['session'] = serialize(self::$instance); } }

De instantie van de sessie wordt gecomprimeerd opgeslagen met serialize.

Optioneel : Genereren van een security -token en deze vergelijken tijdens het uitpakken, zo kan de sessie data niet tussentijds worden aangepast.

Opmerking : Vergeet niet op de 1e regel van de PHP source toe te voegen :

session_start();
Meer informatie : PHP: Sessions - Manual
Zoeken