Maison > développement back-end > Problème PHP > Comment définir un tableau dans un cookie php et attribuer une valeur au tableau

Comment définir un tableau dans un cookie php et attribuer une valeur au tableau

PHPz
Libérer: 2023-04-24 14:59:30
original
660 Les gens l'ont consulté

En tant que langage de script largement utilisé dans le développement web, la fonction cookie de PHP occupe une place très importante. Un cookie est un serveur Web qui enregistre de petites informations textuelles sur le client via le navigateur du client et les envoie automatiquement lorsque le client visite le site Web, afin que le serveur puisse obtenir les informations et effectuer les opérations associées. Les exemples de cookies les plus couramment utilisés sont de maintenir l'utilisateur connecté après la connexion, ou d'enregistrer les informations de l'historique de navigation de l'utilisateur, etc.

En PHP, paramétrer les cookies est très simple, il suffit d'utiliser la fonction setcookie. Par exemple :

setcookie("username", "Jack", time()+3600); //设置用户名为"Jack",有效期为1小时
Copier après la connexion

Ce code créera un cookie nommé « nom d'utilisateur » dans le navigateur client et définira sa valeur sur « Jack » avec une durée de validité de 3600 secondes (1 heure). La valeur du cookie peut être lue et modifiée dans les programmes suivants via la variable globale $_COOKIE. Par exemple :

echo $_COOKIE["username"]; //输出"Jack"
Copier après la connexion

Mais que se passe-t-il si nous voulons stocker un tableau dans un cookie ?

PHP fournit une méthode simple et efficace : sérialiser le tableau et le stocker dans un cookie, puis le désérialiser dans un tableau si nécessaire. Par exemple :

$myArray = array("apple", "banana", "orange");
setcookie("fruits", serialize($myArray), time()+3600); //存储数组$myArray,并设置有效期为1小时
Copier après la connexion

Ce code créera un cookie nommé "fruits" dans le cookie et définira sa valeur sur le tableau $myarray sérialisé avec une période de validité de 3600 secondes (1 heure).

Nous pouvons utiliser la fonction unserialize pour désérialiser le tableau sérialisé dans le cookie pour obtenir :

$myCookieArray = unserialize($_COOKIE["fruits"]); //反序列化$_COOKIE["fruits"]的值为一个数组$myCookieArray
print_r($myCookieArray); //输出$myCookieArray数组
Copier après la connexion

De cette façon, nous pouvons stocker et obtenir un tableau dans le cookie.

Mais il convient de noter que la taille des cookies est limitée et que différents navigateurs et différents serveurs ont des limites de taille différentes. Si le tableau stocké est trop grand, le cookie risque de ne pas être enregistré correctement ou une partie des données peut être perdue. Par conséquent, il est généralement recommandé de stocker des structures de données simples dans des cookies, telles que des chaînes, des nombres, des valeurs booléennes, etc. Il n'est pas recommandé de stocker des structures de données trop volumineuses ou trop complexes.

En général, l'utilisation de cookies en PHP est très flexible et pratique, et c'est également une technologie couramment utilisée dans le développement Web. Pour certaines structures de données simples, nous pouvons les stocker dans des cookies par sérialisation et désérialisation pour faciliter les opérations ultérieures. Bien entendu, vous devez également prêter attention à des problèmes tels que les restrictions de taille des cookies et la sécurité.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal