| 運算子 | 名稱 | 範例 | 結果 |
|---|---|---|---|
| + | 加法 | $a + $b | 和 |
| - | 減法 | $a - $b | 差 |
| * | 乘法 | $a * $b | 積 |
| / | 除法 | $a / $b | 商(浮點數) |
| % | 取模 | $a % $b | 餘數(負數餘數為負) |
| ** | 冪次 | $a ** $b | $a 的 $b 次方 |
| ++ | 遞增 | ++$a / $a++ | 前/後遞增 |
| -- | 遞減 | --$a / $a-- | 前/後遞減 |
注意:除法永遠回傳浮點數;% 運算前將運算元轉為整數;-5 % 2 = -1(PHP 餘數符號跟隨被除數)。
| 運算子 | 等價寫法 |
|---|---|
| = | $a = $b |
| += | $a = $a + $b |
| -= | $a = $a - $b |
| *= | $a = $a * $b |
| /= | $a = $a / $b |
| %= | $a = $a % $b |
| .= | $a = $a . $b |
| **= | $a = $a ** $b |
賦值運算式本身有值:$a = ($b = 4) + 5 → $b=4, $a=9。
傳值 vs 參考:預設傳值(複製);$a = &$b 為參考賦值(指向同一資料)。物件 PHP 5+ 預設參考傳遞。
| 運算子 | 名稱 | 範例 | 結果 |
|---|---|---|---|
| == | 相等 | $a == $b | 型別轉換後相等 |
| === | 全等 | $a === $b | 型別與值皆相等 |
| != / <> | 不等 | $a != $b | == 相反 |
| !== | 不全等 | $a !== $b | === 相反 |
| < | 小於 | $a < $b | |
| > | 大於 | $a > $b | |
| <= | 小於等於 | $a <= $b | |
| >= | 大於等於 | $a >= $b | |
| <=> | 太空船 | $a <=> $b | -1/0/1(PHP 7+) |
型別轉換規則:數字字串轉數字比較;'1' == 1 為 true;'abc' == 0 為 true(字串轉數字為 0)。
| 運算子 | 名稱 | 優先序 | 短路 |
|---|---|---|---|
| ! | NOT | 最高 | - |
| && | AND | 高 | 是 |
| || | OR | 高 | 是 |
| and | AND | 低 | 是 |
| or | OR | 低 | 是 |
| xor | XOR | 低 | 否 |
建議:統一使用 &&、||、!,避免 and/or/xor。
熟練掌握四大類運算子優先序、短路求值、型別轉換規則與賦值運算式回傳值,能寫出簡潔無 Bug 的條件判斷與運算邏輯。實務原則:比較用 ===/!==、邏輯用 &&/||/!、複雜運算加括號明確優先序。