在PHP中,
如果我想写变量$ a与值2的比较?那么哪种方式可行,何时使用第一种和第二种解决方案?
解决方案:
$一个== 2
2 == $ A
我的采访中有人问过这个问题。
答案 0 :(得分:2)
第一个示例2
位于RHS
上,第二个示例2
位于LHS
上,存在巨大差异。等等没关系吗?不,它没有任何区别:)
有些人会说使用2==$a
,如果你陷入困境并忘记一个=
PHP会抱怨,但这也无关紧要。陷入困境是一团糟,无论如何都需要解决。如果这一点非常重要,那么每个人都会使用这种风格,但这只是个人偏好的问题。
答案 1 :(得分:2)
这两种形式是相同的。使用2==$a
的原因更多地与您无意中输入2=$a
时发生的情况有关。
如果您使用$a == 2
进行了比较,但$a = 2
是一项始终会返回真值的作业。
但是,如果您使用2==$a
犯了相同的错误,则会获得2=$a
,并且您无法为文字指定值。 PHP会抱怨并且会有一个bug被困。
用法是一种风格问题。有些地方坚持,很多人都不在乎。
答案 2 :(得分:1)
功能相同。但是,有些人喜欢写2 == $a
,因为$a == 2
如果删除等号,可能会成为一个严重的(和常见的)错误:$a = 2
意味着一些非常不同的东西。使用2 == $a
执行此操作,您会收到语法错误(2 = $a
无意义),这是一个清晰的信号,您搞砸了。
答案 3 :(得分:-2)
这两个表达的区别在于
1. $a==2
检查变量' a'等于数字整数2,即RHS和
2. 2==$a
检查整数2是否等于变量' a'即LHS