How to delete/unset a cookie on php?

偶尔善良 提交于 2019-12-01 16:09:44

you can unset cookies this way only may -1 not work

try this

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

When deleting a cookie you should assure that the expiration date is in the past.

Delete example:

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

Nothing - that code looks fine to me.

Quoting the docs:

When deleting a cookie you should assure that the expiration date is in the past, to trigger the removal mechanism in your browser.

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

You may like to specify a time that's more in the past to avoid problems with the computer's time that may be a bit off.

Additionally, in some cases it's useful to actually unset $_COOKIE['TestCookie'] as well.

As already was said - when deleting a cookie you should assure that the expiration date is in the past.

BUT you also have to use the same path and even domain for deleting, which you used for cookie creating, so if create cookie like this

setcookie ("user", "John", time()+7200, '/', 'mydomain.com'); 

to delete this cookie use this code

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

and also better use specific date in the past instead of time() - 3600

// MUST provide root path or any particular cookie path

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

//UNSET COOKIE
setcookie ("user", "", time()-100 , '/' ); // past time
user4990100
setcookie ("user", "", time() - 3600);
//will reset cookie(client,browser)
unset($_COOKIE["user"]);
// will destroy cookie(server)
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!