laravel5 删除cookie

2023年 8月 6日 50.7k 0

在 Laravel 5 中,可以通过 $request->cookie() 方法获取当前请求中的指定 cookie 值。如果你想删除一个指定的 cookie,可以使用 Response 实例上的 withCookie() 方法,并将 cookie 的过期时间设置为一个过去的时间。例如:

return response('Hello World')->withCookie(cookie('name', null, -1));

登录后复制

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

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

foreach($_COOKIE as $key => $value) {
setcookie($key, $value, time() - 3600, '/');
}

登录后复制

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

foreach($_COOKIE as $key => $value) {
Cookie::queue(Cookie::forget($key));
}

登录后复制

Cookie::forget() 方法将创建一个新的 Cookie 实例,并将其过期时间设置为过去的时间。然后,Cookie::queue() 方法将该实例添加到响应中,从而实现了删除操作。

以上就是laravel5 删除cookie的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论