
表达式和操作符
|
37
P A
操作符 操作
R +=,
−
=,*=,/=,.=,%=,&=,|=,^=,~=,
<<=,>>=
带操作的赋值
5 yield from
yield from
4 yield
yield
3 L and
逻辑与
2 L xor
逻辑异或
1 L or
逻辑或
操作符的数目
PHP
中的大多数操作符都是二元操作符,它们将两个操作数(或表达式)组合成一个更
复杂的表达式。
PHP
也支持一些将简单的表达式转换成更复杂的表达式的一元操作符。
最后,
PHP
还支持将多个表达式结合成一个表达式的三元操作符。
操作符的优先级
操作符在表达式中进行计算的顺序取决于它们的相对优先级。例如,可以这样写 :
2 + 4 * 3
如表
2-3
所示,加法和乘法操作符有不同的优先级,乘法比加法高。因此,乘法运算在
加法运算之前,所以答案是
2+12
,即
14
。如果加法和乘法操作符的优先级逆转,答案
将是
6*3
,即
18
。
要强制执行一个特定顺序的计算,可以用小括号将相应的操作数和操作符组合起来。在
前面的例子中,要想得到值
18
,可以使用这样的表达式 :
(2 + 4) * 3
按照优先级高低放置操作符和操作数,可以编写各种复杂的表达式(表达式中包含多个
操作符),并根据它们的相对优先级得到你想要的答案。然而,按照优先级放置的表达
式不利于理解,大多数程序员都喜欢按照易于理解的顺序写操作符,在需要调整操作符
顺序时使用括号,把需要优先执行的括起来。错用优先级将导致下面的代码 :
$x + 2 / $y >= 4 ? $z : $x << $z