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

PHP 三大運算子類型完整解析:一元、二元、三元運算子

     編輯:PHP 相關知識

前言

運算子是程式語言中操作資料的核心符號。PHP 將運算子依「操作數個數」分為三大類:一元、二元、三元運算子。本文將透過實例詳細說明各類型的行為差異與常見陷阱。

一、一元運算子:只操作單一值

常見範例:邏輯非 !、遞增 ++、遞減 --、錯誤抑制 @。

前置與後置遞增/遞減的關鍵差異

$i = 2;
$a = ++$i; // 先加 1 再賦值:$i=3, $a=3

$i = 2;
$a = $i++; // 先賦值再加 1:$i=3, $a=2

獨立使用時

++$i; // 等同 $i = $i + 1
$i++; // 等同 $i = $i + 1
// 但若指派給新變數,執行順序會影響結果

二、二元運算子:操作兩個值

這是最常見的類型,包含:

  • 算術:+、-、*、/、%
  • 比較:==、===、!=、<、>
  • 邏輯:&&、||、!
  • 指派:=、+=、-= 等
$a = 1 + 2; // 3
$b = 3 - 1; // 2

三、三元運算子:條件判斷的簡潔寫法

語法:(expr1) ? (expr2) : (expr3)

意義:若 expr1 為真,回傳 expr2;否則回傳 expr3。適合用於「根據條件選擇值」,而非控制程式流程。

實務範例:取得分頁參數,預設為第 1 頁

$page = !empty($_GET['page']) ? $_GET['page'] : 1;

巢狀三元運算子(需加括號確保優先序)

$result = ($score >= 90) ? '優' : (($score >= 60) ? '及格' : '不及格');

總結比較表

類型操作數個數常見範例用途
一元1++$i, !$flag狀態切換、數值微調
二元2$a + $b, $x == $y運算、比較、邏輯判斷
三元3$cond ? $a : $b條件賦值、簡化 if-else

最佳實務建議

  1. 避免在複雜邏輯中使用巢狀三元運算子,改用 if/else 增加可讀性。
  2. 前置/後置遞增若不指派給變數,建議統一使用前置 ++$i,效能略佳且語意明確。
  3. 嚴格比較 === 可避免型別轉換導致的非預期結果。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved