
- PHP 教程
- PHP - 首頁
- PHP - 簡介
- PHP - 安裝
- PHP - 歷史
- PHP - 特性
- PHP - 語法
- PHP - Hello World
- PHP - 註釋
- PHP - 變數
- PHP - Echo/Print
- PHP - var_dump
- PHP - $ 和 $$ 變數
- PHP - 常量
- PHP - 魔術常量
- PHP - 資料型別
- PHP - 型別轉換
- PHP - 型別混合
- PHP - 字串
- PHP - 布林值
- PHP - 整數
- PHP - 檔案與 I/O
- PHP - 數學函式
- PHP - Heredoc 和 Nowdoc
- PHP - 複合型別
- PHP - 檔案包含
- PHP - 日期與時間
- PHP - 標量型別宣告
- PHP - 返回型別宣告
- PHP 運算子
- PHP - 運算子
- PHP - 算術運算子
- PHP - 比較運算子
- PHP - 邏輯運算子
- PHP - 賦值運算子
- PHP - 字串運算子
- PHP - 陣列運算子
- PHP - 條件運算子
- PHP - 展開運算子
- PHP - 空值合併運算子
- PHP - 比較符
- PHP 控制語句
- PHP - 決策制定
- PHP - If…Else 語句
- PHP - Switch 語句
- PHP - 迴圈型別
- PHP - For 迴圈
- PHP - Foreach 迴圈
- PHP - While 迴圈
- PHP - Do…While 迴圈
- PHP - Break 語句
- PHP - Continue 語句
- PHP 函式
- PHP - 函式
- PHP - 函式引數
- PHP - 按值傳遞
- PHP - 按引用傳遞
- PHP - 預設引數
- PHP - 具名引數
- PHP - 可變引數
- PHP - 返回值
- PHP - 傳遞函式
- PHP - 遞迴函式
- PHP - 型別提示
- PHP - 變數作用域
- PHP - 嚴格型別
- PHP - 匿名函式
- PHP - 箭頭函式
- PHP - 可變函式
- PHP - 區域性變數
- PHP - 全域性變數
- PHP 超全域性變數
- PHP - 超全域性變數
- PHP - $GLOBALS
- PHP - $_SERVER
- PHP - $_REQUEST
- PHP - $_POST
- PHP - $_GET
- PHP - $_FILES
- PHP - $_ENV
- PHP - $_COOKIE
- PHP - $_SESSION
- PHP 檔案處理
- PHP - 檔案處理
- PHP - 開啟檔案
- PHP - 讀取檔案
- PHP - 寫入檔案
- PHP - 檔案是否存在
- PHP - 下載檔案
- PHP - 複製檔案
- PHP - 追加檔案
- PHP - 刪除檔案
- PHP - 處理 CSV 檔案
- PHP - 檔案許可權
- PHP - 建立目錄
- PHP - 列出檔案
- 面向物件 PHP
- PHP - 面向物件程式設計
- PHP - 類和物件
- PHP - 建構函式和解構函式
- PHP - 訪問修飾符
- PHP - 繼承
- PHP - 類常量
- PHP - 抽象類
- PHP - 介面
- PHP - 特性
- PHP - 靜態方法
- PHP - 靜態屬性
- PHP - 名稱空間
- PHP - 物件迭代
- PHP - 封裝
- PHP - Final 關鍵字
- PHP - 過載
- PHP - 克隆物件
- PHP - 匿名類
- PHP Web 開發
- PHP - Web 概念
- PHP - 表單處理
- PHP - 表單驗證
- PHP - 表單郵件/URL
- PHP - 完整表單
- PHP - 檔案包含
- PHP - GET 和 POST
- PHP - 檔案上傳
- PHP - Cookie
- PHP - Session
- PHP - Session 選項
- PHP - 傳送郵件
- PHP - 過濾輸入
- PHP - Post-Redirect-Get (PRG)
- PHP - 快閃記憶體訊息
- PHP 高階
- PHP - MySQL
- PHP.INI 檔案配置
- PHP - 陣列解構
- PHP - 編碼規範
- PHP - 正則表示式
- PHP - 錯誤處理
- PHP - Try…Catch
- PHP - Bug 除錯
- PHP - 適用於 C 開發人員
- PHP - 適用於 PERL 開發人員
- PHP - 框架
- PHP - Core PHP 與框架
- PHP - 設計模式
- PHP - 過濾器
- PHP - JSON
- PHP - 異常
- PHP - 特殊型別
- PHP - 雜湊
- PHP - 加密
- PHP - is_null() 函式
- PHP - 系統呼叫
- PHP - HTTP 認證
- PHP - 交換變數
- PHP - Closure::call()
- PHP - 過濾後的 unserialize()
- PHP - IntlChar
- PHP - CSPRNG
- PHP - 預期
- PHP - Use 語句
- PHP - 整數除法
- PHP - 已棄用的功能
- PHP - 已刪除的擴充套件和 SAPI
- PHP - PEAR
- PHP - CSRF
- PHP - FastCGI 程序
- PHP - PDO 擴充套件
- PHP - 內建函式
- PHP 有用資源
- PHP - 速查表
- PHP - 問答
- PHP - 快速指南
- PHP - 線上編譯器
- PHP - 有用資源
- PHP - 討論
PHP - 運算子型別
PHP 中的運算子是什麼?
與任何程式語言一樣,PHP 也具有運算子,運算子是預定義的符號(有時為關鍵字),用於對一個或多個運算元執行某些常用操作。
例如,使用表示式“4 + 5”等於 9。這裡“4”和“5”稱為運算元,而“+”稱為運算子。
PHP 中有以下幾種型別的運算子:
算術運算子
比較運算子
邏輯運算子
賦值運算子
字串運算子
陣列運算子
條件(或三元運算子)
本章將概述如何在 PHP 中使用這些運算子。在後續章節中,我們將更詳細地介紹每個運算子及其工作原理。
PHP 中的算術運算子
我們使用算術運算子對給定的運算元執行數學運算,例如加法、減法、乘法、除法等。算術運算子(不包括增量和減量運算子)始終作用於兩個運算元,但是這些運算元的型別應相同。
下表突出顯示了 PHP 支援的算術運算子。假設變數“$a”儲存 42,變數“$b”儲存 20:
運算子 | 描述 | 示例 |
---|---|---|
+ | 將兩個運算元相加 | $a + $b = 62 |
- | 從第一個運算元中減去第二個運算元 | $a - $b = 22 |
* | 將兩個運算元相乘 | $a * $b = 840 |
/ | 將分子除以分母 | $a / $b = 2.1 |
% | 模運算子,整數除法後的餘數 | $a % $b = 2 |
++ | 增量運算子,將整數值增加 1 | $a ++ = 43 |
-- | 減量運算子,將整數值減少 1 | $a -- = 42 |
PHP 中的比較運算子
您可以使用比較運算子比較兩個運算元並找出它們之間的關係。它們根據比較結果返回布林值(真或假)。
下表突出顯示了 PHP 支援的比較運算子。假設變數 $a 儲存 10,變數 $b 儲存 20,則:
運算子 | 描述 | 示例 |
---|---|---|
== | 檢查兩個運算元的值是否相等,如果相等則條件為真。 | ($a == $b) 為假 |
!= | 檢查兩個運算元的值是否不相等,如果不相等則條件為真。 | ($a != $b) 為真 |
> | 檢查左側運算元的值是否大於右側運算元的值,如果大於則條件為真。 | ($a > $b) 為假 |
< | 檢查左側運算元的值是否小於右側運算元的值,如果小於則條件為真。 | ($a < $b) 為真 |
>= | 檢查左側運算元的值是否大於或等於右側運算元的值,如果大於或等於則條件為真。 | ($a >= $b) 為假 |
<= | 檢查左側運算元的值是否小於或等於右側運算元的值,如果小於或等於則條件為真。 | ($a <= $b) 為真 |
PHP 中的邏輯運算子
您可以在 PHP 中使用邏輯運算子對多個表示式一起執行邏輯運算。邏輯運算子始終返回布林值,即真或假。
邏輯運算子通常與條件語句和迴圈一起使用,以根據布林條件返回決策。您還可以將它們組合起來,在處理複雜表示式時操作布林值。
下表突出顯示了 PHP 支援的邏輯運算子。
假設變數 $a 儲存 10,變數 $b 儲存 20,則:
運算子 | 描述 | 示例 |
---|---|---|
並且 | 稱為邏輯 AND 運算子。如果兩個運算元均為真,則條件為真。 | (A 且 B) 為真 |
或 | 稱為邏輯或運算子。如果兩個運算元中的任何一個非零,則條件變為真。 | (A 或 B) 為真 |
&& | 稱為邏輯與運算子。如果兩個運算元都非零,則條件變為真。 | (A && B) 為真 |
|| | 稱為邏輯或運算子。如果兩個運算元中的任何一個非零,則條件變為真。 | (A || B) 為真 |
! | 稱為邏輯非運算子。用於反轉其運算元的邏輯狀態。如果條件為真,則邏輯非運算子將使其變為假。 | !(A && B) 為假 |
PHP 中的賦值運算子
您可以使用 PHP 中的賦值運算子來為給定變數分配或更新新值。賦值運算子的右側儲存值,賦值運算子的左側是將為其分配值的變數。
兩側的資料型別應相同,否則您將收到錯誤。賦值運算子的結合性是從右到左。PHP 支援兩種型別的賦值運算子:
簡單賦值運算子 - 這是最常用的運算子。它用於為變數或常量賦值。
複合賦值運算子 - 賦值運算子 (=) 與其他運算子(如 +、*、/ 等)的組合。
下表突出顯示了 PHP 支援的賦值運算子:
運算子 | 描述 | 示例 |
---|---|---|
= | 簡單賦值運算子,將右側運算元的值賦給左側運算元 | C = A + B 將 A + B 的值賦給 C |
+= | 加法並賦值運算子,它將右側運算元新增到左側運算元,並將結果賦給左側運算元 | C += A 等價於 C = C + A |
-= | 減法並賦值運算子,它從左側運算元中減去右側運算元,並將結果賦給左側運算元 | C -= A 等價於 C = C - A |
*= | 乘法並賦值運算子,它將右側運算元乘以左側運算元,並將結果賦給左側運算元 | C *= A 等價於 C = C * A |
/= | 除法並賦值運算子,它將左側運算元除以右側運算元,並將結果賦給左側運算元 | C /= A 等價於 C = C / A |
%= | 取模並賦值運算子,它使用兩個運算元進行取模運算,並將結果賦給左側運算元 | C %= A 等價於 C = C % A |
PHP 中的字串運算子
PHP 中有兩個用於處理字串資料型別的運算子:
“.”(點)運算子是 PHP 的連線運算子。它連線兩個字串運算元(右側字串的字元附加到左側字串),並返回一個新字串。
PHP 還有“.”= 運算子,可以稱為連線賦值運算子。它透過附加右側運算元的字元來更新其左側的字串。
$third = $first . $second; $leftstring .= $rightstring;
PHP 中的陣列運算子
PHP 定義了以下符號集,用作陣列資料型別的運算子:
符號 | 示例 | 名稱 | 結果 |
---|---|---|---|
+ | $a + $b | 聯合 | $a 和 $b 的聯合。 |
== | $a == $b | 相等 | 如果 $a 和 $b 具有相同的鍵/值對,則為 TRUE。 |
=== | $a === $b | 恆等 | 如果 $a 和 $b 以相同的順序且具有相同的型別,則具有相同的鍵/值對,則為 TRUE。 |
!= | $a != $b | 不相等 | 如果 $a 不等於 $b,則為 TRUE。 |
<> | $a <> $b | 不相等 | 如果 $a 不等於 $b,則為 TRUE。 |
!== | $a !== $b | 非恆等 | 如果 $a 與 $b 不相同,則為 TRUE。 |
PHP 中的條件運算子
PHP 中還有一個運算子,稱為條件運算子。它也稱為三元運算子。它首先評估表示式的真或假值,然後根據評估結果執行兩個給定語句中的一個。
運算子 | 描述 | 示例 |
---|---|---|
? : | 條件表示式 | 如果條件為真?則值為 X:否則值為 Y |
PHP 中的運算子類別
我們上面討論的所有運算子都可以分為以下類別:
一元字首運算子,位於單個運算元之前。
二元運算子,它採用兩個運算元並執行各種算術和邏輯運算。
條件運算子(三元運算子),它採用三個運算元並根據第一個表示式的評估結果評估第二個或第三個表示式。
賦值運算子,它將值賦給變數。
PHP 中的運算子優先順序
運算子的優先順序決定了表示式中運算子的執行順序。例如,在“2+6/3”中,首先執行 6/3 的除法,然後執行“2+2”的加法,因為除法運算子“/”比加法運算子“+”具有更高的優先順序。
要強制某個運算子在其他運算子之前呼叫,應使用括號。在此示例中,(2+6)/3 首先執行加法,然後執行除法。
某些運算子可能具有相同的優先順序。在這種情況下,結合性順序(左或右)決定了操作順序。具有相同優先順序但是非結合性的運算子不能彼此相鄰使用。
下表按優先順序遞減的順序列出了 PHP 運算子:
運算子 | 用途 |
---|---|
clone new | 克隆和新建 |
** | 指數運算 |
++ -- | 增量/減量 |
~(int) (float) (string) (array) (object) (bool) | 型別轉換 |
instanceof | 型別 |
! | 邏輯 |
* / | 乘法/除法 |
% | 取模 |
+ - . | 算術和字串 |
<< >> | 按位移位 |
< <= > >= | 比較 |
== != === !== <> <=> | 比較 |
& | 按位與/引用 |
^ | 按位異或 |
| | 按位或 |
&& | 邏輯與 |
|| | 邏輯或 |
?? | 空合併 |
? : | 三元 |
= += -= *= **= /= .= %= &= |= ^= <<= >>= ??= | 賦值運算子 |
yield from | yield from |
yield | yield |
並且 | 邏輯 |
xor | 邏輯 |
或 | 邏輯 |