此章節我們介紹 PHP 的運算子 (Operators)。
運算子是可以通過給出的一或多個值(用編程行話來說,運算式)來產生另一個值(因而整個結構成為一個運算式)的東西。
An operator is something that you feed with one or more values (or expressions, in programming jargon) which yields another value (so that the construction itself becomes an expression).
算術運算子 (Arithmetic Operators)
| 運算子 |
說明 |
樣本 |
結果 |
| + |
加 |
2+2 $a + $b |
4 變數$a 和 $b 的和 |
| - |
減 |
3-2 $a - $b |
1 變數$a 和 $b 的差 |
| * |
乘 |
3*2 $a * $b |
6 變數$a 和 $b 的乘積 |
| / |
除 |
3/2 $a / $b |
1.5 變數$a 除以 $b 的結果 |
| % |
餘數 |
3/2 $a % $b |
1 變數$a 除以 $b 的餘數 |
賦值運算子 (Assignment Operators)
基本的賦值運算子是 =。你可能會以為它是"等於",其實不是的。它實際上意味著把右邊運算式的值賦給左邊的運算數。
比如 $a = 5 ,表示將 5 這個值賦給變數 $a。
在 PHP 語言中,= 表示賦值, == 才表示等於。 == 參見下面的比較子。
比較子 (Comparison Operators)
| 運算子 |
說明 |
樣本 |
| == |
等於 |
6==6 返回 TRUE |
| != |
不等於 |
7!=8 返回 TRUE |
| < |
小於 |
8<7 返回 FALSE |
| > |
大於 |
8>7 返回 TRUE |
| <= |
小於等於 |
8<=9 返回 TRUE |
| >= |
大於等於 |
8>=9 返回 FALSE |
邏輯運算子 (Logical Operators)
| 運算子 |
說明 |
樣本 |
| && |
and 與 |
$a && $b 如果 $a 和 $b 都為 TRUE,返回TRUE |
| || |
or 或 |
$a || $b 如果 $a,$b 中任何一個為 TRUE,返回 TRUE |
| ! |
not 非 |
!$a 如果 $a 不是TRUE,返回 TRUE |
| xor |
xor 或異 |
$a xor $b 如果 $a,$b 中任何一個為 TRUE,但不同時為 TRUE,返回 TRUE |
遞增/遞減運算子 (Incrementing/Decrementing Operators)
| 運算子 |
說明 |
樣本 |
| ++ |
遞增 |
$a++,返回$a,然後將$a的值加1 ++$a,$a的值加1,然後返回$a |
| -- |
遞減 |
$a--,返回$a,然後將$a的值減1 --$a,$a的值減1,然後返回$a |
字串運算子 (String Operators)
字元運算子有2個。一個是串連運算子.,用來串連兩個字串;一個是串連賦值運算子.=,它將右邊參數附加到左邊的參數後。樣本如下:
| 運算子 |
樣本 |
結果 |
| . |
"Hello"."World" |
HelloWorld |
| .= |
$a="Hello"; $a.="World"; |
$a.="World" 相當於$a = $a."World" $a 的值為 HelloWorld |
賦值運算子和算術運算子的結合使用
| 運算子組合 |
樣本 |
說明 |
| += |
$a += 3 |
$a = $a + 3 |
| -= |
$a -= 3 |
$a = $a - 3 |
| *= |
$a *= 3 |
$a = $a * 3 |
| /= |
$a /= 3 |
$a = $a / 3 |
| %= |
$a %= 3 |
$a = $a % 3 |