Zend Framework - Gestion des cookies

Le cookie est un concept très important dans une application Web. Il offre la possibilité de conserver les données de l'utilisateur, généralement un petit élément d'information dans le navigateur lui-même pendant une période limitée.

Un cookie est utilisé pour maintenir l'état de l'application Web. Le framework Zend fournit un module cookie dans lezend-httpcomposant. Ce zend-http fournit l'abstraction HTTP et son implémentation.

Installation du composant HTTP

Le composant HTTP peut être facilement installé à l'aide du Composer comme spécifié dans le code ci-dessous.

composer require zendframework/zend-http

Concept

Le zend-http fournit le Zend\Http\Cookiesclasse pour gérer les cookies. Il est utilisé avec leZend\Http\Clientclass, qui est utilisée pour envoyer une requête à un serveur Web. Les cookies peuvent être initialisés comme indiqué dans le code ci-dessous -

use Zend\Http\Cookies  
$c = new Cookies();

Lorsque le client HTTP (Zend \ Http \ Client) envoie pour la première fois une requête URI au serveur Web, il n'a aucun cookie. Une fois la demande reçue par le serveur Web, il inclut le cookie dans son objet de réponse en tant queHTTP Header, Set-Cookieet l'envoie au client HTTP. Le client HTTP extraira le cookie de la réponse http et le renverra comme même en-tête HTTP dans la requête suivante. En général, chaque cookie sera mappé à un domaine et à un chemin du domaine.

Les méthodes disponibles dans Cookies les classes sont les suivantes -

  • addCookie(uri) - Il est utilisé pour ajouter un cookie dans l'objet de requête de l'URI donné.

  • getCookie(cookieName, $cookieForm) - Il est utilisé pour obtenir le cookie, $ cookieName disponible dans l'URI donné, $uri. Le troisième argument est la manière dont le cookie sera renvoyé, que ce soit une chaîne ou un tableau.

  • fromResponse(uri) - Il est utilisé pour extraire les cookies de l'objet de réponse de l'URI donné.

  • addCookiesFromResponse - C'est la même chose que fromResponse, mais il l'extrait et l'ajoute à nouveau dans l'objet de requête de l'URI donné.

  • isEmpty() - Il est utilisé pour déterminer si le Cookie l'objet a un cookie ou non.

  • reset() - Il est utilisé pour effacer tous les cookies dans l'URI donné.

Dans le chapitre suivant, nous discuterons de la gestion de session dans le Framework Zend.