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

如何在php上删除/取消设置cookie?,php,cookies,session-cookies,session-timeout,Php,Cookies,Session Cookies,Session Timeout,我想使用以下命令取消设置/删除现有cookie: setcookie ("user", "", time()-1); unset($user); 但是cookies不能被删除或取消设置。那么问题出在哪里呢?您可以通过这种方式取消设置cookies,但可能-1不起作用 试试这个 setcookie ("user", "", time() - 3600); 没什么-我觉得代码很好 引用文件: 删除cookie时,应确保过期日期在过去,以触发浏览器中的删除机制 您可能希望指定一个更接近过去的时间

我想使用以下命令取消设置/删除现有cookie:

setcookie ("user", "", time()-1); 
unset($user);

但是cookies不能被删除或取消设置。那么问题出在哪里呢?

您可以通过这种方式取消设置cookies,但可能-1不起作用

试试这个

setcookie ("user", "", time() - 3600);

没什么-我觉得代码很好

引用文件:


删除cookie时,应确保过期日期在过去,以触发浏览器中的删除机制

您可能希望指定一个更接近过去的时间,以避免计算机时间出现问题,这可能有点过时


此外,在某些情况下,实际上取消设置
$\u COOKIE['TestCookie']
也很有用。

删除COOKIE时,应确保过期日期在过去

删除示例:

// set the expiration date to one hour ago
setcookie("user", "", time()-3600);

如前所述,删除cookie时,您应该确保过期日期在过去

但是您还必须使用相同的路径,甚至域进行删除,这是您创建cookie时使用的路径,因此如果像这样创建cookie

setcookie ("user", "John", time()+7200, '/', 'mydomain.com'); 
要删除此cookie,请使用以下代码

setcookie ("user", "", time()-3600, '/', 'mydomain.com');

而且最好使用过去的特定日期而不是时间()

//SET COOKIE
setcookie ("user", "", time() + 3600 , '/'); 

//UNSET COOKIE
setcookie ("user", "", time()-100 , '/' ); // past time

我照你说的做了,但什么也没得到。我照你说的做了,但什么也没得到。你是否用你的cookie名称更改了“user”,如果是,可能会有其他问题,但在php中,我们只能用这种方式取消cookie…可能的重复项//必须提供根路径或任何特定的cookie路径//设置cookie setcookie(“user”,“time()+3600”,“/”)//取消设置COOKIE setcookie(“用户”,时间()-100,“/”);//过去的时间您可能会发现有帮助,如中所示。请使用代码块包装您的代码以提高可读性。
//SET COOKIE
setcookie ("user", "", time() + 3600 , '/'); 

//UNSET COOKIE
setcookie ("user", "", time()-100 , '/' ); // past time
setcookie ("user", "", time() - 3600);
//will reset cookie(client,browser)
unset($_COOKIE["user"]);
// will destroy cookie(server)