首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 運算子完整讀書筆記:算術、賦值、比較、邏輯、三元、字串、錯誤控制

     編輯:PHP 相關知識

PHP 運算子完整讀書筆記:算術、賦值、比較、邏輯、三元、字串、錯誤控制

系統整理 PHP 七大類運算子,含定義、符號、範例、結果說明、優先級提醒與實務建議,適合快速查閱與考試複習。

一、什麼是運算子?

運算子是告訴 PHP 執行特定運算的符號。例如 + 代表加法,= 代表賦值。PHP 運算子按功能分為:算術、賦值、比較、三元、邏輯、字串連接、錯誤控制。

二、算術運算子

運算類型符號範例結果
正號++$a$a 轉為數值
負號(取反)--$a$a 的負值
加法+$a + $b和
減法-$a - $b差
乘法*$a * $b積
除法/$a / $b商(浮點數)
取餘%$a % $b餘數
冪運算**$a ** $b$a 的 $b 次方 (PHP 5.6+)

三、賦值運算子

類型符號範例等價寫法
基本賦值=$a = $b將 $b 值複製給 $a
引用賦值=&$a =& $b$a 與 $b 指向同一記憶體
加法賦值+=$a += 5$a = $a + 5
減法賦值-=$a -= 5$a = $a - 5
乘法賦值*=$a *= 5$a = $a * 5
除法賦值/=$a /= 5$a = $a / 5
取餘賦值%=$a %= 5$a = $a % 5
串接賦值.=$a .= 'str'$a = $a . 'str'

四、比較運算子

類型符號範例結果 (true 條件)
小於<$a < $b$a 小於 $b
大於>$a > $b$a 大於 $b
小於等於<=$a <= $b$a ≤ $b
大於等於>=$a >= $b$a ≥ $b
相等(值)==$a == $b值相等(經型別轉換)
全等(值+型別)===$a === $b值相等且型別相同
不相等!= / <>$a != $b值不相等
不全等!==$a !== $b值不相等或型別不同
太空船<=>$a <=> $b$a<$b→-1, 相等→0, $a>$b→1 (PHP 7+)

鐵律: 永遠優先使用 ===/!==,避免 "0" == false、null == 0 等隱含轉換陷阱。

五、三元運算子

$result = (expr1) ? (expr2) : (expr3);
// expr1 為 true 回傳 expr2,否則 expr3

// 簡寫:Elvis Operator (PHP 5.3+)
$result = $a ?: $b; // 相當於 $a ? $a : $b

// Null Coalescing (PHP 7+)
$result = $a ?? $b; // $a 存在且非 null 回傳 $a,否則 $b

六、邏輯運算子

類型符號範例結果優先級
邏輯 AND&&$a && $b皆真則真高
邏輯 ANDand$a and $b皆真則真極低
邏輯 OR||$a || $b一真則真高
邏輯 ORor$a or $b一真則真極低
邏輯 XORxor$a xor $b單真則真中
邏輯 NOT!!$a真偽互換最高

投票類比: && = 全員同意才通過;|| = 一人同意即通過;xor = 僅能有一人同意;! = 否決權。

七、字串連接運算子

符號名稱範例結果
.連接$a . $b將 $b 附加到 $a 後
.=連接賦值$a .= $b$a = $a . $b

八、錯誤控制運算子

  • @ 抑制單一運算式的錯誤訊息(含 Notice、Warning、Error)。
  • 範例:$content = @file_get_contents('missing.txt'); 不會輸出 Warning。
  • 若 php.ini 開啟 track_errors = On,錯誤訊息會存入 $php_errormsg(每次覆蓋)。
  • 限制: 不屏蔽解析錯誤;不可用於函式/類別定義、if/foreach 等結構前。
  • 最佳實踐: 開發環境禁用 @,讓錯誤暴露;生產環境配置 error_reporting 與日誌記錄,而非靠 @ 掩蓋。

九、運算子優先級速查(高→低)

clone new
**                  (右結合)
+ - ~ ++ -- (type) @
instanceof
* / %
+ - .
<< >>
< <= > >=
== != === !== <> <=>
&
^
|
&&
||
??                  (PHP 7+)
? :                 (右結合)
= += -= *= /= %= .= &= ^= |= <<= >>= (右結合)
and
xor
or
,
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved