使用setcookie()使用$ _COOKIE = array()来使cookie变量失效;

时间:2017-10-27 03:19:16

标签: php cookies

我是PHP的新手,我正在构建一个简单的登录表单。我想让用户选择选中"保持登录状态"选项。我正在使用cookie数组来实现这一目标。

当用户点击退出时,我使用$ _COOKIE = array()删除为该用户存储的变量。但是,我审核的所有文档都建议使用setcookie()并将过期日期设置为过去。

https://www.w3schools.com/php/php_cookies.asp

How to delete/unset a cookie on php?

https://php.net/manual/en/features.cookies.php

为什么setcookie()方法优越?我注意到在使用setcookie()清除用户信息时,更改不会在页面刷新后生效。

1 个答案:

答案 0 :(得分:2)

  

为什么setcookie()方法优越?

它不是上级,它是实际工作的唯一方法。

更改$_COOKIE仅更改当前请求。在下一个请求中,阵列将再次填充用户浏览器发送的所有cookie。您必须告知浏览器有关更改的信息,唯一的方法是使用setcookie

,如果您愿意,可以同时执行这两项工作,setcookie 更改$_COOKIE,以确保您不会稍后在脚本中使用旧的(即将离开)值。