「PHP系列」PHP 运算符详解

一、PHP 运算符简介

在 PHP 中,运算符用于执行各种操作,如算术运算、比较、逻辑运算、字符串连接等。以下是一些 PHP 中常用的运算符:

1. 算术运算符

  • 加法 (+)
  • 减法 (-)
  • 乘法 (*)
  • 除法 (/)
  • 取模 (余数) (%)
  • 取整 (intdiv())

2. 赋值运算符

  • 赋值 (=)
  • 加等于 (+=)
  • 减等于 (-=)
  • 乘等于 (*=)
  • 除等于 (/=)
  • 取模等于 (%=)

3. 比较运算符

  • 等于 (==)
  • 全等 (===)
  • 不等于 (!=)
  • 不全等 (!==)
  • 大于 (>)
  • 小于 (<)
  • 大于等于 (>=)
  • 小于等于 (<=)
  • 空格船 (<>) // 等同于 !=

4. 逻辑运算符

  • 逻辑与 (and&&)
  • 逻辑或 (or||)
  • 逻辑非 (!)
  • 逻辑异或 (xor)

5. 位运算符

  • 按位与 (&)
  • 按位或 (|)
  • 按位异或 (^)
  • 按位非 (~)
  • 左移 (<<)
  • 右移 (>>)

6. 字符串运算符

  • 连接 (.)

7. 错误控制运算符

  • 错误控制 (@)

8. 类型运算符

  • instanceof 用于确定一个对象是否属于某个类的实例

9. 执行运算符

  • 反引号 (``) 用于执行外部命令并返回输出(与 shell_exec() 函数类似)

10. 递增/递减运算符

  • 递增 (++)
  • 递减 (--)

11. 数组运算符

  • 联合 (+) 用于合并两个数组
  • 相等 (==) 和全等 (===) 用于比较数组
  • 不等 (!=) 和不全等 (!==) 用于比较数组不等

12. 引用运算符

  • & 用于引用赋值

二、PHP 算术运算符

在 PHP 中,算术运算符用于执行数学运算,如加法、减法、乘法、除法等。这些运算符可以直接作用于数字或变量,得出相应的结果。以下是 PHP 中常用的算术运算符:

1. 加法运算符 (+)

用于将两个数相加,或者将字符串与数字相加(在这种情况下,字符串会被转换为数字,如果无法转换则结果为 0)。

$a = 5;
$b = 3;
$sum = $a + $b; // $sum 的值为 8

2. 减法运算符 (-)

用于从一个数中减去另一个数。

$a = 5;
$b = 3;
$difference = $a - $b; // $difference 的值为 2

3. 乘法运算符 (*)

用于将两个数相乘。

$a = 5;
$b = 3;
$product = $a * $b; // $product 的值为 15

4. 除法运算符 (/)

用于将一个数除以另一个数。结果是一个浮点数,除非两个操作数都是整数且可以整除。

$a = 10;
$b = 2;
$quotient = $a / $b; // $quotient 的值为 5.0

5. 取模运算符 (%)

也称为求余运算符,用于获取两个数相除的余数。

$a = 10;
$b = 3;
$remainder = $a % $b; // $remainder 的值为 1

6. 取整运算符

PHP 提供了几个取整函数,而不是单一的取整运算符。最常用的取整函数包括:

  • intval():获取变量的整数值。
  • floor():向下取整,返回不大于参数值的最大整数。
  • ceil():向上取整,返回不小于参数值的最小整数。
  • round():四舍五入取整。
$number = 7.6;
$intValue = intval($number); // $intValue 的值为 7
$floorValue = floor($number); // $floorValue 的值为 7
$ceilValue = ceil($number); // $ceilValue 的值为 8
$roundValue = round($number); // $roundValue 的值为 8

7. 递增和递减运算符

PHP 还提供了递增(++)和递减(--)运算符,它们可以前置或后置在变量前面,用于增加或减少变量的值。

$a = 5;
$a++; // $a 的值变为 6
++$a; // $a 的值变为 7

$b = 5;
$b--; // $b 的值变为 4
--$b; // $b 的值变为 3

三、PHP 赋值运算符

在 PHP 中,赋值运算符用于将一个表达式的值赋给一个变量。基本的赋值运算符是 =,它将右侧表达式的值赋给左侧的变量。除了基本的赋值运算符外,PHP 还提供了一些组合赋值运算符,这些运算符允许你在赋值的同时执行其他操作,如加法、减法、乘法、除法等。

以下是 PHP 中的赋值运算符及其功能:

1. 基本赋值运算符 (=)

将右侧表达式的值赋给左侧的变量。

$a = 5; // 将值 5 赋给变量 $a

2. 组合赋值运算符

加等于 (+=)

将左侧变量与右侧表达式的值相加,并将结果赋给左侧变量。

$a = 5;
$a += 3; // $a 的值变为 8

减等于 (-=)

从左侧变量中减去右侧表达式的值,并将结果赋给左侧变量。

$a = 5;
$a -= 3; // $a 的值变为 2

乘等于 (*=)

将左侧变量与右侧表达式的值相乘,并将结果赋给左侧变量。

$a = 5;
$a *= 3; // $a 的值变为 15

除等于 (/=)

将左侧变量除以右侧表达式的值,并将结果赋给左侧变量。

$a = 10;
$a /= 2; // $a 的值变为 5.0

取模等于 (%=)

取左侧变量与右侧表达式的值的余数,并将结果赋给左侧变量。

$a = 10;
$a %= 3; // $a 的值变为 1

字符串连接赋值 (.=)

将右侧表达式的值连接到左侧变量的值的末尾,并将结果赋给左侧变量。

$str = "Hello";
$str .= " World"; // $str 的值变为 "Hello World"

3. 位运算符的赋值形式

PHP 还支持位运算符的赋值形式,如 &=|=^=<<=>>= 等,用于对变量的位进行运算并赋值。

四、PHP 比较运算符

在 PHP 中,比较运算符用于比较两个值,并返回布尔值(truefalse)来表示比较的结果。这些运算符在条件语句(如 if 语句)中特别有用,以确定程序的控制流程。以下是 PHP 中常用的比较运算符:

1. 等于和不等于

  • 等于 (==):检查两个值是否相等,不考虑类型。
  • 不等于 (!=):检查两个值是否不相等,不考虑类型。
$a = 5;
$b = "5";

if ($a == $b) {
    echo "a 等于 b"; // 输出: a 等于 b
}

if ($a != $b) {
    // 不会执行,因为 $a 和 $b 在使用 == 运算符时是相等的
}

2. 恒等和不恒等

  • 恒等 (===):检查两个值是否相等,并且它们的类型也相同。
  • 不恒等 (!==):检查两个值是否不相等,或者它们的类型不同。
$a = 5;
$b = "5";

if ($a === $b) {
    // 不会执行,因为 $a 和 $b 的类型不同
}

if ($a !== $b) {
    echo "a 不恒等于 b"; // 输出: a 不恒等于 b
}

3. 大于、小于、大于等于和小于等于

  • 大于 (>):检查左侧的值是否大于右侧的值。
  • 小于 (<):检查左侧的值是否小于右侧的值。
  • 大于等于 (>=):检查左侧的值是否大于或等于右侧的值。
  • 小于等于 (<=):检查左侧的值是否小于或等于右侧的值。
$a = 5;
$b = 3;

if ($a > $b) {
    echo "a 大于 b"; // 输出: a 大于 b
}

if ($a < $b) {
    // 不会执行,因为 $a 不小于 $b
}

if ($a >= $b) {
    echo "a 大于等于 b"; // 输出: a 大于等于 b
}

if ($a <= $b) {
    // 不会执行,因为 $a 不小于等于 $b
}

4. 空格船运算符

  • 空格船 (<>):是 != 的另一种写法,用于检查两个值是否不相等。这个运算符在 PHP 中不常用,并且在一些编程风格中可能被视为不推荐的。
$a = 5;
$b = 3;

if ($a <> $b) {
    echo "a 不等于 b"; // 输出: a 不等于 b
}

五、PHP 逻辑运算符

在 PHP 中,逻辑运算符用于执行逻辑运算,并返回布尔值(truefalse)。这些运算符允许你组合或比较多个条件,并根据这些条件的逻辑结果来执行相应的代码块。以下是 PHP 中常用的逻辑运算符:

1. 逻辑与 (and&&)

逻辑与运算符用于检查两个条件是否都为 true。只有当两个操作数都为 true 时,结果才为 true。否则,结果为 false

$a = true;
$b = true;

if ($a && $b) {
    echo "a 和 b 都为 true"; // 输出: a 和 b 都为 true
}

2. 逻辑或 (or||)

逻辑或运算符用于检查至少有一个条件是否为 true。如果至少有一个操作数为 true,则结果为 true。只有当两个操作数都为 false 时,结果才为 false

$a = true;
$b = false;

if ($a || $b) {
    echo "a 或 b 至少有一个为 true"; // 输出: a 或 b 至少有一个为 true
}

3. 逻辑非 (!not)

逻辑非运算符用于对单个条件取反。如果操作数为 true,则结果为 false;如果操作数为 false,则结果为 true

$a = true;

if (!$a) {
    echo "a 为 false"; // 不会输出,因为 $a 为 true
} else {
    echo "a 为 true"; // 输出: a 为 true
}

4. 逻辑异或 (xor)

逻辑异或运算符用于比较两个条件,并在其中一个条件为 true 但不是两者都为 true 时返回 true。如果两个条件都为 false 或都为 true,则结果为 false

$a = true;
$b = false;

if ($a xor $b) {
    echo "a 或 b 只有一个为 true"; // 输出: a 或 b 只有一个为 true
}

六、相关链接

  1. php官网
  2. php_Github
  3. PHP实现Token
  4. 「PHP系列」PHP简介与起步
  5. 「PHP系列」PHP语法介绍
  6. 「PHP系列」PHP变量
  7. 「PHP系列」PHP echo/print语句、数据类型详解
  8. 「PHP系列」PHP 常量/字符串、类型比较
  • 34
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雪梅零落

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值