通常当我编写PHP时,我构造这样的条件:
if(1 === $var1
and 2 === $var2
or 1 == $var3) {
// do something here maybe
}
Run Code Online (Sandbox Code Playgroud)
我认为这使得阅读更容易,更自然.我知道当我使用Yodas时,这可能是可笑的.
我之所以在前面冠以自己的行每一个条件and或者or是因为它使得在调试时更容易发表意见陈述出来的一部分.
是否有任何缺点这样做与"通常"比较||和&&?
or并且and 不具有相同的运算符优先级的||和&&.这意味着,在用于表达的特定值[a]和[b],[a] and [b] != [a] && [b].这可能会产生非明显的错误.

请注意,一个优先级高于赋值,而另一个优先级不高.这是一个微妙的差异,即使你理解它,其他开发人员阅读你的代码可能不会.因此,我个人建议仅 使用&&和||
在这方面,Ruby的运算符与PHP类似. Jay Fields发表了一个简单的例子.
| 归档时间: |
|
| 查看次数: |
210 次 |
| 最近记录: |