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
print print
并且 逻辑
xor 逻辑
逻辑
广告

© . All rights reserved.