条件语句中的顺序


Order in conditional statements

可能的重复项:
PHP 错误位置在条件中

我注意到很多PHP代码使用条件语句,如CONST ==VARIABLE。我从小就被语法反转表达。这种结构有什么原因吗?

例:

 // this is the way I see it most typically represented in PHP
 if ( false == $foobar ) { // do this }
 // this is the way I normally do it
 if ( $foobar == false ) { // do this }
这是

为了防止===之间的常见拼写错误,称为尤达病症。请考虑以下事项:

if( false = $foobar) {

这将导致错误,捕获被视为错误的内容,因为您无法将任何内容分配给false。相反:

if( $foobar = false) { 

这是有效的语法,很容易犯错误。

但是,我通常更喜欢if( $foobar == false)语法,因为单元测试应该能够捕获这些编程错误。

你通常这样做的方式正是大多数程序员的做法。第一个例子称为尤达条件:

http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html

而且不是常态。