A.php有以下语句<?php
    if(isset($_COOKIE["name"])){
        echo $_COOKIE["name"];
    }
    else{
        setcookie("name","murphy");
    }
?>浏览器访问后,就注册了一个cookie,我这里没给失效时间,然后我把A.php的内容改为:
<?php
        echo $_COOKIE["name"];
?>
而且将浏览器关闭,再重新访问A.php,发现仍然可以打印出murphy。问题来了,对于expire参数,手册上说:
 If set to 0, or omitted, the cookie will expire at the end of the session (when the browser closes).
大意是浏览器关闭后,cookie就过期,那为何上面我还可以访问到?

解决方案 »

  1.   

    chrome
    safari
    FF
    都测试过。
      

  2.   

    反正我用你的代码是没问题的,确认是关了浏览器(不是新 tab )再打开的. 
      

  3.   

    我mac机器
    你什么操作系统,什么浏览器。。
    我是全部关闭,不是关tab。
      

  4.   

    win7+chrome/ie  都没有问题
      

  5.   

    额。。
    缓存和cookie又扯上关系了。
      

  6.   

    cookie 在没有设置时间过期时间,为关闭浏览器清楚
      

  7.   

    mac下 没出现这样的现象
    故有此问
      

  8.   

    清了缓存也是不行的。
    只有清cookie才行。
    好吧,这个问题以后再解决。