Cookie
Note
Pour toutes les fonctionnalités Http, Ubiquity utilise des classes techniques contenant des méthodes statiques. C’est un choix de conception pour éviter l’injection de dépendances qui dégraderait les performances.
La classe UCookie fournit des fonctionnalités supplémentaires permettant de manipuler plus facilement le tableau php natif $_COOKIES.
Création ou modification de Cookie
use Ubiquity\utils\http\UCookie;
$cookie_name = 'user';
$cookie_value = 'John Doe';
UCookie::set($cookie_name, $cookie_value);//duration : 1 day
Création d’un cookie d’une durée de 5 jours :
UCookie::set($cookie_name, $cookie_value,5*60*60*24);
Sur un domaine particulier :
UCookie::set($cookie_name, $cookie_value,5*60*60*24,'/admin');
Envoi d’un cookie sans url-encodage de la valeur du cookie :
UCookie::setRaw($cookie_name, $cookie_value);
Test de la création du cookie :
if(UCookie::setRaw($cookie_name, $cookie_value)){
//cookie created
}
Récupération d’un cookie
$userName=UCookie::get('user');
Vérification de l’existence
if(UCookie::exists('user')){
//do something if cookie user exists
}
Utilisation d’une valeur par défaut
Si le cookie nommé page
n’existe pas, la valeur par défaut 1
est renvoyée :
$page=UCookie::get('page',1);
Suppression d’un cookie
Suppression du cookie avec le nom page :
UCookie::delete('page');
Suppression de tous les cookies
Suppression de tous les cookies d’un domaine entier :
UCookie::deleteAll();
Suppression de tous les cookies du domaine admin :
UCookie::deleteAll('/admin');