Maison > développement back-end > Problème PHP > Comment définir le délai d'expiration des cookies php ?

Comment définir le délai d'expiration des cookies php ?

青灯夜游
Libérer: 2023-03-02 18:48:01
original
4370 Les gens l'ont consulté

Vous pouvez utiliser la fonction setcookie() en PHP pour définir le délai d'expiration des cookies. La syntaxe est « setcookie(name,value,expire,path,domain,secure) » ; le paramètre expire est utilisé pour spécifier la période de validité du cookie, c'est-à-dire l'horodatage d'expiration.

Comment définir le délai d'expiration des cookies php ?

La fonction setcookie() envoie un cookie HTTP au client.

Un cookie est une variable envoyée par le serveur au navigateur. Les cookies sont généralement de petits fichiers texte qu'un serveur intègre sur l'ordinateur d'un utilisateur. Ce cookie est envoyé chaque fois que le même ordinateur demande une page via un navigateur.

[Recommandation de tutoriel associée : "Tutoriel PHP"]

Le nom du cookie est automatiquement attribué à une variable du même nom. Par exemple, si le cookie envoyé est nommé « utilisateur », une variable nommée $user sera automatiquement créée contenant la valeur du cookie.

Le cookie doit être attribué avant que toute autre sortie ne soit envoyée au client.

En cas de succès, cette fonction renvoie VRAI. Renvoie FALSE en cas d'échec.

Syntaxe

setcookie(name,value,expire,path,domain,secure)
Copier après la connexion

Paramètres :

ParamètresDescription th>
nomObligatoire. Spécifie le nom du cookie.
valeurObligatoire. Spécifie la valeur du cookie.
expireFacultatif. Spécifie le délai d'expiration du cookie.
参数描述
name必需。规定 cookie 的名称。
value必需。规定 cookie 的值。
expire可选。规定 cookie 的过期时间。

time()+3600*24*30 将设置 cookie 的过期时间为 30 天。如果这个参数没有设置,那么 cookie 将在 session 结束后(即浏览器关闭时)自动失效。

path可选。规定 cookie 的服务器路径。

如果路径设置为 "/",那么 cookie 将在整个域名内有效.如果路径设置为 "/test/",那么 cookie 将在 test 目录下及其所有子目录下有效。默认的路径值是 cookie 所处的当前目录。

domain可选。规定 cookie 的域名。

为了让 cookie 在 example.com 的所有子域名中有效,您需要把 cookie 的域名设置为 ".example.com"。当您把 cookie 的域名设置为 www.example.com 时,cookie 仅在 www 子域名中有效。

secure可选。规定是否需要在安全的 HTTPS 连接来传输 cookie。如果 cookie 需要在安全的 HTTPS 连接下传输,则设置为 TRUE。默认是 FALSE。
              time()+3600*24*30 fixera le délai d'expiration du cookie à 30 jours. Si ce paramètre n'est pas défini, le cookie expirera automatiquement après la fin de la session (c'est-à-dire lorsque le navigateur est fermé).

cheminFacultatif. Spécifie le chemin du serveur pour les cookies. Si le chemin est défini sur "/", alors le cookie sera valide dans l'ensemble du nom de domaine. Si le chemin est défini sur "/test/", alors le cookie sera valide dans le répertoire de test et tous ses. sous-répertoires. La valeur du chemin par défaut est le répertoire actuel où se trouve le cookie.
domaineFacultatif. Spécifie le nom de domaine du cookie. Pour que le cookie soit valide dans tous les sous-domaines de example.com, vous devez définir le nom de domaine du cookie sur ".example.com". Lorsque vous définissez le nom de domaine du cookie sur www.example.com, le cookie n'est valide que dans le sous-domaine www.
sécuriséFacultatif. Spécifie si les cookies doivent être transmis via une connexion HTTPS sécurisée. Définissez sur TRUE si les cookies doivent être transmis via une connexion HTTPS sécurisée. La valeur par défaut est FALSE.

Définir le délai d'expiration du cookie

Définir le cookie pour qu'il expire après un jour

setcookie ("mycookie", "123", time()+3600*24);
/* http://www.manongjc.com/article/1258.html */
Copier après la connexion
time() représente l'horodatage de l'heure actuelle, time()+3600*24 représente l'horodatage des prochaines 24 heures.

De même, configurez le cookie pour qu'il expire après un an

setcookie ("mycookie", "123", time()+3600*24*365);
Copier après la connexion

Supprimez le cookie

En définissant la date d'expiration sur une date/heure dans le passé, Supprimer un cookie : <🎜>
setcookie("username", "", time()-3600,"/amazon");
setcookie("lastlogin", "", time()-3600,"/amazon");
setcookie("userid", "", time()-3600,"/amazon");
Copier après la connexion
<🎜><🎜>Supprimer tous les cookies de la session en cours<🎜><🎜>
foreach($_COOKIE as $key=>$val){
setcookie($key,"",time()-3600,"/amazon");
Copier après la connexion

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!

Étiquettes associées:
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