Créer un cookie en PHP

Nous allons utiliser la fonction setcookie(), de la manière suivante (par exemple):

setcookie("Journaldunet", "oui", time()+3600*24*30, "/", ".journaldunet.com",0);

Le premier argument de la fonction spécifie le nom du cookie.
Le second argument spécifie sa valeur (ici une chaîne).
Le troisième spécifie la date et l'heure à laquelle expirera le cookie: plus précisément, cette valeur est exprimée en nombre de secondes écoulées depuis le 1er janvier 1970 (en pratique, on utilise la fonction time() pour connaître l'heure courante, à laquelle on ajoute la durée de validation du cookie en secondes).
Notre cookie expirera ici après 30 jours (omettre l'argument, provoque l'expiration du cookie immédiatement après la fermeture du navigateur).
Le quatrième argument spécifie le chemin du répertoire de notre site où le cookie possède une validité; ici, nous spécifions la racine du site : nous aurions pu omettre cette précision car il s'agit là de la valeur par défaut de cet argument facultatif.
Le cinquième argument spécifie le nom du domaine sur lequel est valable le cookie : là encore, il s'agit d'un argument facultatif dont la valeur par défaut est le nom du domaine duquel a été envoyé le cookie.
A noter que ce nom de domaine doit obligatoirement comporter deux ".".
Enfin le sixième et dernier argument est fixé à 1 si l'envoi du cookie est effectué par protocole sécurisé (https), à 0 sinon (valeur par défaut de cet argument facultatif).

Récupération de la valeur des cookies

Les valeurs des cookies valides et disponibles sont automatiquement stockées dans le tableau $HTTP_COOKIE_VARS.
Selon la configuration de votre serveur, elles sont également stockées dans la variable correspondant au nom du cookie.
Ainsi, on affichera cette valeur soit par:

echo $Journaldunet;
soit, de manière plus rigoureuse, par:

echo $HTTP_COOKIE_VARS[ "Journaldunet"];

Suppression d'un cookie


Il est très simple, là encore, de supprimer un cookie, par exemple en cas de déconnexion d'une session par l'utilisateur: la méthode consiste à renvoyer un cookie avec, pour seul argument à la fonction setcookie(), le nom du cookie à supprimer.