PHP操作符包括算术、赋值、比较、逻辑、位、字符串、数组、三元、空合并、错误控制、执行和类型检查等类型,不同操作符具有特定优先级和结合性,合理使用可提升代码准确性与效率。

PHP中的操作符是用于执行程序代码中变量或常量之间操作的符号。根据功能和用途的不同,操作符可以分为多个种类,每种操作符都有其特定的优先级和结合方向。了解这些操作符的种类与优先级,有助于写出更准确、高效的PHP代码。
1. 算术操作符
用于执行基本的数学运算。
- +:加法
- -:减法
- *:乘法
- /:除法(返回浮点数)
- %:取模(求余数)
- **:幂运算(PHP 5.6+)
例如:
echo 5 + 3; // 输出 8
echo 2 ** 3; // 输出 8
2. 赋值操作符
用于将值赋给变量。
- =:基本赋值
- +=:加后赋值
- -=:减后赋值
- *=:乘后赋值
- /=:除后赋值
- %=:取模后赋值
- .=:字符串拼接赋值
例如:
$a = 5;
$a += 3; // 相当于 $a = $a + 3;
3. 比较操作符
用于比较两个值,返回布尔结果。
立即学习“PHP免费学习笔记(深入)”;
- ==:等于(值相等)
- ===:全等(值和类型都相等)
- != 或 :不等于
- !==:不全等
- :小于
- >:大于
- :小于等于
- >=:大于等于
- :太空船操作符(PHP 7+),相等返回0,左大返回1,右大返回-1
例如:
var_dump(5 == '5'); // true
var_dump(5 === '5'); // false
4. 逻辑操作符
用于组合条件判断。
- && 或 and:逻辑与
- || 或 or:逻辑或
- !:逻辑非
- xor:异或(仅一个为真时返回真)
注意:and 和 or 的优先级低于 && 和 ||,建议使用后者避免歧义。
5. 位操作符
对整数的二进制位进行操作。
- &:按位与
- |:按位或
- ^:按位异或
- ~:按位取反
- :左移
- >>:右移
例如:
echo 5 & 3; // 结果为 1
6. 字符串操作符
用于字符串处理。
- .:连接两个字符串
- .=:连接并赋值
例如:
$str = "Hello" . " World"; // 结果为 "Hello World"
7. 数组操作符
用于数组之间的操作。
- +:联合(合并数组,键相同则保留第一个)
- ==:相等(键值对相同即为真)
- ===:全等(键值对相同且顺序一致)
- != 或 :不相等
- !==:不全等
8. 三元操作符与空合并操作符
简化条件判断。
- ?::三元操作符(条件 ? 值1 : 值2)
- ??:空合并操作符(PHP 7+),左侧存在且不为null时取左,否则取右
例如:
$name = $_GET['name'] ?? 'Guest';
$result = $age >= 18 ? '成人' : '未成年人';
9. 错误控制操作符
@:抑制表达式产生的错误信息。
例如:
@file_get_contents('missing.txt'); // 不显示错误
但应谨慎使用,不利于调试。
10. 执行操作符
`(反引号):执行系统命令并返回输出(类似 shell_exec())。
例如:
$output = `ls -la`;
注意安全风险,生产环境慎用。
11. 类型操作符
instanceof:检查对象是否为某类的实例。
例如:
if ($obj instanceof MyClass) { ... }
操作符优先级与结合性
操作符优先级决定了表达式中哪个操作先执行。高优先级的操作符会先于低优先级的执行。
常见优先级从高到低示例:
- !、++、--、(type)、@
- *
- +、-、.
- 、>=
- ==、!=、===、!==
- &&
- ||
- ?:
- =、+=、-= 等赋值操作符
- and
- xor
- or
结合性指相同优先级操作符的计算顺序。大多数操作符是左结合,赋值类为右结合。
例如:
$a = $b = 5; // 右结合,相当于 $b=5; $a=$b;
建议在复杂表达式中使用括号明确优先级,提高可读性。
基本上就这些。掌握操作符种类和优先级规则,能有效避免逻辑错误,让代码更清晰可靠。










