Écrivez d'abord le code simple suivant :
Copiez le code Le code est le suivant :
<?php setcookie('a','value'); print $_COOKIE['a'];
Premier Lors de cette visite, une erreur a été signalée :
La raison de l'erreur est que la valeur de $_COOKIE['a'] n'existe pas. Deuxième visite :
Question : Pourquoi n'y a-t-il pas de cookie lors de la première visite ? ? Ne devrais-je pas le régler d'abord, puis l'obtenir ? ?
A : Utilisez le firebug de Firefox pour afficher "Réseau" :
Client :
Vous pouvez voir que le navigateur (client) fait une requête au serveur. Lors de la requête, divers paramètres sont inclus dans les informations d'en-tête de la requête, indiquant au serveur quel type de texte (Accepter), quel format de codage (Accepter-Encodage) et quelle langue je souhaite recevoir (Accepter -Langue), etc., bien entendu, le Cookie est également transmis au serveur (Cookie).
Côté serveur :
Première étape : setcookie('a','value')
Étant donné que le cookie est défini sur le client, la fonction setcookie elle-même ne peut pas définir le cookie , il ne peut indiquer au navigateur que via les informations d'en-tête : Frère, je veux définir un cookie, la clé est a, la valeur est valeur, vous pouvez m'aider à le configurer chez vous. Vous pouvez aussi le comprendre comme : "Viens, je suis heureux aujourd'hui et je vais te donner un cookie."
Deuxième étape : $_COOKIE['a']$_COOKIE['a']
C'est très simple L'opération consiste à rechercher la clé dans la chaîne de cookie apportée par le navigateur. . le cookie de a et renvoie sa valeur.
Evidemment, ce cookie avec la "clé a" est introuvable, car lorsque le client accède au serveur, ce cookie n'existe pas du tout, et l'étape précédente Le les informations d'en-tête du cookie n'ont pas encore été renvoyées au client (php ne reviendra pas au client tant que l'instruction n'aura pas été exécutée de haut en bas)
Étape 3 : Le serveur renvoie les informations
Parmi eux, les informations d'en-tête renvoyées contiennent "Set-Cookie a=value", le navigateur reçoit ces informations d'en-tête et stocke le cookie dans un fichier sur l'ordinateur. L'emplacement de stockage du cookie semble être différent selon les navigateurs. Cela dépasse le cadre de cet article.
Lorsque vous actualisez le navigateur et accédez à nouveau au serveur, de nombreuses informations d'en-tête seront envoyées au serveur, mais cette fois, il y a une valeur a= supplémentaire dans le cookie. a'] peut naturellement trouver la valeur du cookie avec la clé a à partir de la chaîne du cookie
Recommandations associées :
Exemple de code de vérification de connexion en utilisant cookies php
classe d'opération de cookies php
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!