不同的运算符号,其实还是有优先顺序,就像小时候在学数学时,老师会教:先乘除、后加减。在 PHP 的运算优先顺序可以参考下面的表格,在混合式的情形下,愈往下表示优先权愈高。至于符号代表的意义,散见于以下的章节中。
运算符号 | 结合规则 |
---|---|
, | 左至右 |
or | 左至右 |
xor | 左至右 |
and | 左至右 |
.= &= |= /= %= ^= = += -= *= | 左至右 |
? : | 左至右 |
|| | 左至右 |
&& | 左至右 |
| | 左至右 |
^ | 左至右 |
& | 左至右 |
== != | 不限 |
< <= >= > | 不限 |
<< >> | 左至右 |
+ - . | 左至右 |
* / % | 左至右 |
! ~ ++ -- @ | 右至左 |
[] | 右至左 |
就像先哲说的?:物有本末、事有终始,知所先后,则近道矣,在运算时只要照着运算优先顺序写出来的程序,应该不会发生结果和预期不同的情形。在写作时多注意细节,可以减少调试的痛苦!