Documentation : Sessions
Le système de session permet de stocker temporairement des variables, qui sont liées à un visiteur. L'intérêt est
de faire des traitements dans un contrôleur en fonction des traitements effectuée précédemment dans les contrôleurs
exécutés préalablement.
Chaque session est liée à un navigateur par le biais d'un cookie déposé au premier accès. Cela est transparent car
géré par le framework.
L'objet de gestion des sessions est créé automatiquement par Temma, si la configuration
le prévoit. Il est alors disponible dans les contrôleurs en utilisant l'attibut privé $this->_session.
Cet objet ne propose que deux méthodes : get() et set().
get(string, [mixed])
Cette méthode sert à récupérer les données d'une variable placée préalablement en session, dont le nom est passé en
paramètre.
Le second paramètre, optionnel, sert à définir la valeur qui sera retournée si la variable n'existe pas en session. Par
défaut, la méthode retourne null si elle ne trouve pas la variable demandée.
Exemples d'utilisation :
// récupère les informations sur l'utilisateur courant
// (informations placées en session après l'identification de l'utilisateur)
$currentUser = $this->_session->get('user');
// récupération du panier de commande de l'utilisateur courant
// (s'il n'existe pas, on l'initilise avec un tableau vide)
$basket = $this->_session->get('basket', array());
set(string, [mixed])
Cette méthode sert à enregistrer une variable de session. Le nom de la variable est passé en premier paramètre, et sa valeur en second paramètre.
Si le second paramètre n'est pas défini (ou est passé à null), la variable est effacée de la session si elle existait.
Exemples d'utilisation :
// enregistrement des informations de l'utilisateur courant (après identification)
$this->_session->set('user', $user);
// effacement des informations de l'utilisateur courant (après déconnexion)
$this->_session->set('user', null);
// identique à la ligne précédente
$this->_session->set('user');