The code is as follows
代码如下 |
复制代码 |
// set the expiration date to one hour ago
setcookie ("TestCookie", "", time() - 3600);
setcookie ("TestCookie", "", time() - 3600, "/~rasmus/", "example.com", 1);
?>
|
|
Copy code
|
代码如下 |
复制代码 |
$name = "post_url";
$value = "";
setcookie($name, $value, time()+60*60*3, "/" );
|
// set the expiration date to one hour ago
setcookie ("TestCookie", "", time() - 3600);
setcookie ("TestCookie", "", time() - 3600, "/~rasmus/", "example.com", 1);
?>
I encountered a strange thing today. When setting cookie, I passed an empty string to $value, but the result turned out to be that the cookie was deleted... |
The code is as follows |
Copy code |
$name = "post_url";
$value = "";
setcookie($name, $value, time()+60*60*3, "/" );
Go through the source code of php 5.4.13 and get the result
The type of value in the parameter is char * in C language, and there is also a value_len indicating its length.
If value_len is 0, the following cookie is written:
The value is "deleted" and the expiration time is Thu, 01-Jan-1970 08:00:01 CST or Thu, 01-Jan-1970 00:00:01 GMT
It seems that setcookie($name, "") can indeed delete this cookie...
Similarly, in php, strval(NULL) === "", so setcookie($name, NULL) is equivalent to setcookie($name, ""), and this cookie can also be deleted.
http://www.bkjia.com/PHPjc/632123.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/632123.htmlTechArticleMany friends use setcookie to set the value to empty or NULL. The system will automatically delete the cookie. Here I will Let me analyze the reasons for deleting cookies when the cookie value is null or empty string. If necessary...
|