1. 算术运算符
算术运算符用于执行常见的算术操作,如加法、减法、乘法、除法和取模。
-
+
(加法):$a = 5; $b = 3; $result = $a + $b; // 结果是 8
-
-
(减法):$a = 5; $b = 3; $result = $a - $b; // 结果是 2
-
*
(乘法):$a = 5; $b = 3; $result = $a * $b; // 结果是 15
-
/
(除法):$a = 6; $b = 3; $result = $a / $b; // 结果是 2
-
%
(取模):$a = 5; $b = 3; $result = $a % $b; // 结果是 2
2. 赋值运算符
赋值运算符用于将一个值赋给一个变量,并可以结合其他操作。
-
=
(赋值):$a = 5;
-
+=
(加赋值):$a = 5; $a += 3; // $a 现在是 8
-
-=
(减赋值):$a = 5; $a -= 3; // $a 现在是 2
-
*=
(乘赋值):$a = 5; $a *= 3; // $a 现在是 15
-
/=
(除赋值):$a = 6; $a /= 3; // $a 现在是 2
-
%=
(模赋值):$a = 5; $a %= 3; // $a 现在是 2
-
**=
(幂赋值):$a = 2; $a **= 3; // $a 现在是 8 (2的3次方)
3. 比较运算符
比较运算符用于比较两个值,返回布尔值 true
或 false
。
-
==
(相等):$a = 5; $b = 5; $result = ($a == $b); // 结果是 true
-
===
(全等):$a = 5; $b = '5'; $result = ($a === $b); // 结果是 false,因为类型不同
-
!=
(不等):$a = 5; $b = 3; $result = ($a != $b); // 结果是 true
-
<>
(不等,等同于 !=):$a = 5; $b = 3; $result = ($a <> $b); // 结果是 true
-
!==
(不全等):$a = 5; $b = '5'; $result = ($a !== $b); // 结果是 true,因为类型不同
-
>
(大于):$a = 5; $b = 3; $result = ($a > $b); // 结果是 true
-
<
(小于):$a = 5; $b = 3; $result = ($a < $b); // 结果是 false
-
>=
(大于等于):$a = 5; $b = 5; $result = ($a >= $b); // 结果是 true
-
<=
(小于等于):$a = 5; $b = 5; $result = ($a <= $b); // 结果是 true
-
<=>
(太空船运算符):$a = 5; $b = 5; $result = $a <=> $b; // 结果是 0,因为 $a 等于 $b
4. 逻辑运算符
逻辑运算符用于结合条件。
-
&&
(与):$a = true; $b = false; $result = ($a && $b); // 结果是 false
-
||
(或):$a = true; $b = false; $result = ($a || $b); // 结果是 true
-
!
(非):$a = false; $result = !$a; // 结果是 true
-
and
(与):$a = true; $b = false; $result = ($a and $b); // 结果是 false
-
or
(或):$a = true; $b = false; $result = ($a or $b); // 结果是 true
-
xor
(异或):$a = true; $b = false; $result = ($a xor $b); // 结果是 true
5. 位运算符
位运算符用于按位操作数。
-
&
(按位与):$a = 5; // 0101 $b = 3; // 0011 $result = $a & $b; // 结果是 1 (0001)
-
|
(按位或):$a = 5; // 0101 $b = 3; // 0011 $result = $a | $b; // 结果是 7 (0111)
-
^
(按位异或):$a = 5; // 0101 $b = 3; // 0011 $result = $a ^ $b; // 结果是 6 (0110)
-
~
(按位取反):$a = 5; // 0101 $result = ~$a; // 结果是 -6 (按位取反后得到11111010,二进制补码形式表示-6)
-
<<
(左移):$a = 5; // 0101 $result = $a << 1; // 结果是 10 (1010)
-
>>
(右移):$a = 5; // 0101 $result = $a >> 1; // 结果是 2 (0010)
6. 字符串运算符
字符串运算符用于处理字符串操作。
-
.
(连接):$a = "Hello"; $b = "World"; $result = $a . " " . $b; // 结果是 "Hello World"
-
.=
(连接赋值):$a = "Hello"; $a .= " World"; // $a 现在是 "Hello World"
7. 数组运算符
数组运算符用于比较数组。
-
+
(联合):$a = ['a' => 'apple', 'b' => 'banana']; $b = ['b' => 'berry', 'c' => 'cherry']; $result = $a + $b; // 结果是 ['a' => 'apple', 'b' => 'banana', 'c' => 'cherry'],$a 会覆盖 $b 中的相同键
-
==
(相等):$a = ['a' => 'apple', 'b' => 'banana']; $b = ['a' => 'apple', 'b' => 'banana']; $result = ($a == $b); // 结果是 true
-
===
(全等):$a = ['a' => 'apple', 'b' => 'banana']; $b = ['a' => 'apple', 'b' => 'banana']; $result = ($a === $b); // 结果是 true
-
!=
(不等):$a = ['a' => 'apple', 'b' => 'banana']; $b = ['a' => 'apple', 'b' => 'berry']; $result = ($a != $b); // 结果是 true
-
!==
(不全等):$a = ['a' => 'apple', 'b' => 'banana']; $b = ['a' => 'apple', 'b' => 'berry']; $result = ($a !== $b); // 结果是 true
8. 其他运算符
包括一些特殊用途的运算符。
-
??
(Null 合并运算符):$a = null; $b = "default"; $result = $a ?? $b; // 结果是 "default"
-
??=
(Null 合并赋值运算符):$a = null; $b = "default"; $a ??= $b; // $a 现在是 "default"
-
?:
(三元运算符):$a = true; $result = $a ? "yes" : "no"; // 结果是 "yes"
-
=>
(数组元素定义):$array = ['key' => 'value'];
-
@
(错误控制运算符):$result = @file('non_existent_file.txt'); // 抑制错误消息