使用 setcookie() 使 cookie 变量过期与使用 $_COOKIE = array();

丹尼尔·朗

我是 PHP 新手,正在构建一个简单的登录表单。我想让用户可以选择选中带有“保持登录状态”选项的框。我正在使用 cookie 数组来实现这一点。

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

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

如何删除/取消设置 php 上的 cookie?

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

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

tkausl

为什么 setcookie() 方法更胜一筹?

它并不优越,它是唯一真正有效的方法。

更改$_COOKIE仅针对当前请求更改它。在下一个请求中,该数组将再次填充用户浏览器发送的所有 cookie。您必须将更改通知浏览器,唯一的方法是使用setcookie.

如果需要,可以同时执行这两项操作setcookie 更改$_COOKIE,以确保稍后不会在脚本中使用旧的(即将消失的)值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章