我只是徘徊在约等同于PHP是条件的概念,
什么可能是
true == isset($variable)
和
isset($variable) == true
之间的区别?
我只是徘徊在约等同于PHP是条件的概念,
什么可能是
true == isset($variable)
和
isset($variable) == true
之间的区别?
对于这个特定的情况,没有区别。
第一种语法用于防止意外分配而不是比较。
if (true = $x) // would yiled error
if ($x = true) // would work
但是,在你的情况下,没有区别。
阐述:
说你要比较的变量$x
到true
,做一些事情。你可能会不小心写
if ($x = true)
,而不是
if ($x == true)
和条件总是通过。
但如果你进入写作
if (true == $x)
这些错误不会发生的习惯,因为会产生一个语法错误,你会提前知道。
没有区别。但是isset()
本身返回一个布尔值。
所以永远不要使用
if (true == isset($variable))
刚:
if (isset($variable))
这是一个伟大的提醒我xdazz谢谢Mate – 2012-01-27 09:16:48
难道是Java的,有差异。
即
String test = null;
if("".equals(test)){
System.out.println("I m fine..");
}
if(test.equals("")){
System.out.println("I m not fine..");
}
这是关联这里伴侣? – 2012-01-27 09:21:31
请记住,当PHP解析,真正的实际定义,其等于1。此外所以是假的,这是等于0的PHP自动检查这些用于与在这些值的比较IF声明。你会安全的使用!运算符,因为它与if($ something == false)祝你好运!
可以请您详细说明@Luchian – 2012-01-27 09:08:15
但是我在这里比较它,而不是指定 – 2012-01-27 09:09:37
这个想法是为了防止*偶然*分配。请参阅'尤达条件'在这里:http://stackoverflow.com/questions/3757941/yoda-conditions-and-integer-promotion – 2012-01-27 09:10:50