$result = "true";
$result = ($tmp1=="true");
echo $result;这样会显示true
$result = "false";
$result = ($tmp1=="true");
echo $result;
这样怎么就不会显示false呢。什么都没返回。

解决方案 »

  1.   

    PHP手册说:
    A boolean TRUE value is converted to the string "1". Boolean FALSE is converted to "" (the empty string). This allows conversion back and forth between boolean and string values. 
    参见:
    Language Reference -> Types -> Strings -> Converting to string
      

  2.   

    如果$tmp1 = 0会是楼主的结果一样
      

  3.   

    本帖最后由 xuzuning 于 2010-09-19 09:24:52 编辑
      

  4.   

    $tmp1= "true";
    $result = ($tmp1=="true");
    echo $result;
    是这样的。我把变量搞错了。COPY的时候
    我就是想问一下 PHP中的 条件最后是返回true 和 false 
    还是 1 和 0
    还是如上面的人说的,只返回1 假的话就返回""
      

  5.   

    true就是true,false就是false,echo true 和 echo false做的事情是先把true或false转换成string再输出的,所以这里输出的是1和""。如果你在应该用到int值的时候用true或false,PHP手册上也说了FALSE will yield 0 (zero), and TRUE will yield 1 (one). 所以最后返回的true和false就是true和false,不是1和0,也不是"1"和""只是在适当的时候会自动转换成它们。