Maison > cadre php > Laravel > laravel5 supprimer les cookies

laravel5 supprimer les cookies

PHPz
Libérer: 2023-05-20 18:21:07
original
537 Les gens l'ont consulté

Dans Laravel 5, vous pouvez obtenir la valeur de cookie spécifiée dans la requête en cours via la méthode $request->cookie(). Si vous souhaitez supprimer un cookie spécifique, vous pouvez utiliser la méthode withCookie() sur l'instance Response et définir l'heure d'expiration du cookie sur une heure antérieure. Par exemple : $request->cookie() 方法获取当前请求中的指定 cookie 值。如果你想删除一个指定的 cookie,可以使用 Response 实例上的 withCookie() 方法,并将 cookie 的过期时间设置为一个过去的时间。例如:

return response('Hello World')->withCookie(cookie('name', null, -1));
Copier après la connexion

上述代码将在响应中设置名为 name 的 cookie 值为 null,并将其过期时间设置为一个过去的时间戳。通过这种方式,浏览器将不再保存该 cookie,从而实现了删除操作。

如果你想删除所有的 cookie,可以循环遍历所有的 cookie,并分别设置其过期时间为过去的时间。

foreach($_COOKIE as $key => $value) {
  setcookie($key, $value, time() - 3600, '/');
}
Copier après la connexion

上述代码会先遍历所有的 cookie,然后使用 setcookie() 函数将每一个 cookie 的过期时间设置为当前时间减去一小时,并将其路径设置为根路径。如果你在使用 Laravel 5,可以使用它提供的 Cookie 辅助函数来实现相同的效果。

foreach($_COOKIE as $key => $value) {
  Cookie::queue(Cookie::forget($key));
}
Copier après la connexion

Cookie::forget() 方法将创建一个新的 Cookie 实例,并将其过期时间设置为过去的时间。然后,Cookie::queue()rrreee

Le code ci-dessus définira la valeur du cookie nommé name sur null dans la réponse et définira son heure d'expiration sur un horodatage passé. De cette manière, le navigateur n'enregistrera plus le cookie, permettant ainsi sa suppression. 🎜🎜Si vous souhaitez supprimer tous les cookies, vous pouvez parcourir tous les cookies et définir leur heure d'expiration sur l'heure passée. 🎜rrreee🎜Le code ci-dessus traversera d'abord tous les cookies, puis utilisera la fonction setcookie() pour définir le délai d'expiration de chaque cookie à l'heure actuelle moins une heure, et définir son chemin vers la racine chemin. Si vous utilisez Laravel 5, vous pouvez utiliser la fonction d'assistance Cookie qu'elle fournit pour obtenir le même effet. 🎜rrreee🎜La méthode Cookie::forget() créera une nouvelle instance de Cookie et définira son heure d'expiration sur l'heure passée. La méthode Cookie::queue() ajoute ensuite l'instance à la réponse, effectuant ainsi la suppression. 🎜

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