php教程 運算子優先順序:
先算乘除後算加減,遇到括弧先算括弧內
運算子優先順序指定了兩個運算式綁定得有多“緊密”。例如,運算式 1 + 5 * 3 的結果是 16 而不是 18 是因為乘號(“*”)的優先順序比加號(“+”)高。必要時可以用括弧來強制改變優先順序。例如:(1 + 5) * 3 的值為 18。如果運算子優先順序相同,則使用從左至右的左聯順序
運算子優先順序 結合方向 運算子 附加資訊
非結合 clone new clone 和 new
左 [ array()
非結合 ++ -- 遞增/遞減運算子
非結合 ~ - (int) (float) (string) (array) (object) (bool) @ 類型
非結合 instanceof 類型
右結合 ! 邏輯操作符
左 * / % 算術運算子
左 + - . 算術運算子和字串運算子
左 << >> 位元運算符
非結合 < <= > >= <> 比較子
非結合 == != === !== 比較子
左 & 位元運算符和引用
左 ^ 位元運算符
左 | 位元運算符
左 && 邏輯運算子
左 || 邏輯運算子
左 ? : 三元運算子
右 = += -= *= /= .= %= &= |= ^= <<= >>= 賦值運算子
左 and 邏輯運算子
左 xor 邏輯運算子
左 or 邏輯運算子
左 , 多處用到
例子 名稱 結果
-$a 取反 $a 的負值。
$a + $b 加法 $a 和 $b 的和。
$a - $b 減法 $a 和 $b 的差。
$a * $b 乘法 $a 和 $b 的積。
$a / $b 除法 $a 除以 $b 的商。
$a % $b 模數 $a 除以 $b 的餘數。
<?php
$a=10;
$b=20;
echo -$a; //取反 $a 的負值。 -10
echo "<br/>";
echo $a+$b; //加法 $a 和 $b 的和。 30
echo "<br/>";
echo $a-$b; //減法 $a 和 $b 的差。 -10
echo "<br/>";
echo $a*$b; //乘法 $a 和 $b 的積。 200
echo "<br/>";
echo $a / $b; //除法 $a 除以 $b 的商。 0.5
echo "<br/>";
echo $a % $b; //模數 $a 除以 $b 的餘數。 10
echo "<br/>";
?>
<?php
$a = 3 * 3 % 5; // (3 * 3) % 5 = 4
$a = true ? 0 : true ? 1 : 2; // (true ? 0 : true) ? 1 : 2 = 2
$a = 1;
$b = 2;
$a = $b += 3; // $a = ($b += 3) -> $a = 5, $b = 5
?>