php fase == $var 和 $var == fase的区别

php 条件判断语句里 fase == $var 和 $var == fase的区别,为什么大牛都喜欢把 false 或true 写在比较运算符前?

阅读 2.2k
2 个回答

运行结果是一样的。不过大家经常犯这种错误:

if ($var = false) { // 此处应为 $var === false

}

语法上这是完全正确的,但是结果很可能是错误的。这种错误肉眼很难看出来,可能耽误很长时间。

所以有些规范干脆要求反过来写:false == $var,这样如果错写成 false = $var,会立刻被 IDE 找出来。

原则上,使用比较运算时都应该保持 常量在左的原则,但是大多数人还是习惯性变量在左,但是现代IDE可以通过代码检查自动矫正。比如 PHPStorm

推荐问题
宣传栏