出现这种情况,是因为PHP把字符串当做数字来比较了.echo (int)'F';这样表达式是为0的.详细参见手册.
为了避免这种情况,可能用if($ck_Time==="F")或者就把哪个参数设置为$ck_Time = "-1"或者什么的
避免数字和字符串比较.

解决方案 »

  1.   

    字符串的是值是以从左到右能匹配到的最大的数字来决定的.
    比如说 echo (int)"123FFFF222",值为123
    echo (int)"fff", 值为0
      

  2.   

    if($ck_Time==="F")
    或者就把哪个参数设置为$ck_Time = -1 || $ck_Time = 0一般而言,cookie的时间一般为unix时间,类型为整数所以,参数一般给整型,你给了一个字符型的默认值,计算会出错如果给的是字符型的变量类型,记住要转成整型
      

  3.   

    Cookie1("user","1",0);   ???你确定是执行的Cookie()那个函数吗.
    弱类型语言要注意类型类型转换带来的问题。
      

  4.   

    晕,原来是字符比较的问题.
    谢谢jakey9826.
    (int)'F'我知道会等于0.
    if($ck_Time==="F") 这个也是不行的,我试过.
    不过问题原因算是搞明白了.没想到字符比较的一个类型的问题.
    结了