首页 >后端开发 >PHP问题 >php cookie无法删除吗

php cookie无法删除吗

WBOY
WBOY原创
2022-06-15 16:49:552270浏览

在PHP中,cookie可以删除;可以将cookie的有效期设置为当前时间以前来删除,因为删除cookie需要确保该cookie的有效期在过去,才能够触发浏览器的删除机制,语法为“setcookie("Cookie_name", "" , time()-1);”。

php cookie无法删除吗

本文操作环境:Windows10系统、PHP8.1版、Dell G3电脑

php cookie无法删除吗

php cookie可以删除

要删除cookie需要确保它的失效期是在过去,才能触发浏览器的删除机制。

删除一个cookie的方法就是把这个cookie的有效期设置为当前时间以前

删除Cookie

当 Cookie被创建时,如果没有设置它的有效时间,其 Cookie 文件会在关闭浏览器时自动的被删除。如果要在关闭浏览器之前删除保存在客户端的 Cookie 文件,其方法有两种,而这两种方法和设置Cookie一样,也是调用setcookie() 函数实现删除 Cookie的动作: 第一种方式,省略setcookie() 函数的所有参数列,仅仅使用第一个参数 Cookie 识别名称参数,来删除指定名称的 Cookie 资料;第二种方式,利用 setcookie() 函数把目标 Cookie 设置为 “已经过期” 的状态。

1. 使用 setcookie() 函数把目标 Cookie 设置为 “已经过期” 的状态来删除 Cookie直线电机工作原理

删除 Cookie 和 创建 Cookie 的方式基本类型,删除 Cookie 也使用 setcookie() 函数。 删除 Cookie只需要将 setcookie() 函数中的第二个参数设置为空值,将第三个参数 Cookie 的失效时间设置为 小于系统的当前时间即可。

下面就来通过代码来将Cookie 的失效时间设置为当前时间减1秒。

setcookie("Cookie_name", "" , time()-1);

上面的代码中,time()函数返回以秒表示的当前的时间戳,把当前时间减1秒就会得到过去的时间,从而删除 Cookie。

2. 使用 setcookie() 函数把 Cookie 的生存时间默认设置为空, 则生存期限与浏览器一样,浏览器关闭时 Cookie就会被删除。只指定 Cookie 识别名称一个参数,即删除客户端中这个指定名称的 Cookie 资料。

setcookie("Cookie_name");

注意:把失效时间设置为0,也可以直接删除 Cookie。

Cookie 的生命周期

如果 Cookie 不设定失效时间,就表示它的生命周期就为浏览器会话的期间,只要关闭浏览器,Cookie 就会自动消失。这种 Cookie 被称为会话 Cookie ,一般不保存在硬盘上,而是保存在内存中。

如果设置失效时间,那么浏览器会把 Cookie保存到硬盘中,再次打开浏览器时会依然有效,指导它的有效期到期后。

虽然 Cookie 可以长期保存在客户端浏览器中,但也不是一成不变的。因为浏览器最多允许存储 300 个Cookie文件,而且每个 Cookie 文件支持最大容量为4KB;每个域名最多支持20个 Cookie ,如果达到限制时,浏览器会自动地随机删除 Cookie 文件。

推荐学习:《PHP视频教程

以上是php cookie无法删除吗的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn