运算符是用来对数据、变量和常量进行计算的符号。

3.1.1 算术运算符

算数运算符是用来进行四则运算的符号。
PHP算数运算符:

运算符 说明 示例
+ 加法 $a + $b
- 负数、减法 -$a、$a-$b
* 乘法 $a * $b
/ 除法 $a / $b
% 求模(求余数) $a % $b
  1. <?php
  2. header("content-type:text/html;charset=utf-8");
  3. $a = 10;
  4. $b = 7;
  5. $result = $a + $b;
  6. echo "加法:{$result}<br/><br/>";
  7. $result = $a - $b;
  8. echo "减法:{$result}<br/><br/>";
  9. $result = $a * $b;
  10. echo "乘法:{$result}<br/><br/>";
  11. $result = $a / $b;
  12. echo "除法:{$result}<br/><br/>";
  13. $result = $a % $b;
  14. echo "求模:{$result}<br/><br/>";

结果为:
image.png
image.png

3.1.2 比较运算符

比较运算符用于比较两个变量值之间的大小关系。
PHP比较运算符:

运算符 说明 示例
< 小于 $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
!= 不等于 $a!=$b,若$a不等于$b,则返回true
=== 全等 $a===$b,若$a等于$b,且类型不同,则返回true
!== 非全等 $a!==$b,若$a不等于$b,且类型不同,则返回true
<=> 组合比较符 $a<=>$b,若$a小于$b,则返回-1;若$a等于$b,则返回0;若$a大于$b,则返回1
?? 空合并符 $a??$b??$c,返回从左到右的第一个不为NULL的变量值
<?php
header("content-type:text/html;charset=utf-8");

$a = 30;

if($a < 20){
    echo "a 小于 20";
}
elseif($a > 20){
    echo "a 大于 20";
}
else{
    echo "a 等于 20";
}

结果为:
image.png
image.png

3.1.3 逻辑运算符

逻辑运算符用于把语句连接成更加复杂的语句。
PHP逻辑运算符:

运算符 说明 示例
&& 逻辑与 $a && $b,当$a和$b都为true时,返回结果就为true
|| 逻辑或 $a || $b,当$a和$b有一个为true时,返回结果就为true
! 逻辑非 !$a,当$a为true时,!$a返回结果就为false
<?php
header("content-type:text/html;charset=utf-8");

$age = 10;
$sex = "男";

if($age < 20 && $sex=="男"){
    echo "小男孩";
}
else{
    echo "未知";
}

结果为:
image.png
image.png

3.1.4 连接运算符

连接运算符用于将两个或两个以上的字符串进行连接,组合成一个新的字符串。
PHP连接运算符:

运算符 说明 示例
. 连接运算符 $a.$b,将$a和$b连接成一个全新的字符串
<?php
header("content-type:text/html;charset=utf-8");

$userName = "小明";
$age = 15;

echo $userName."的年龄为:".$age;

结果为:
image.png
image.png

3.1.5 赋值运算符

赋值运算符用于实现变量的赋值操作。
PHP赋值运算符:

运算符 说明 示例
= 赋值 $a=10,将数据10赋给$a变量
+= $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
.= 连接 $a .= $b,等价于$a = $a . $b
<?php
header("content-type:text/html;charset=utf-8");

$a = 10;

$a += 20;

echo "a变量的值为:{$a}";

结果为:
image.png
image.png

3.1.6 递增递减运算符

递增递减运算符用于控制变量在原有值基础上加1或减1。
PHP递增递减运算符:

运算符 说明 示例
++$a 前置递增 $a = 5;
echo ++$a;
表示变量$a先加1,然后再返回结果值,显示结果为6
—$a 前置递减 $a = 5;
echo —$a;
表示变量$a先减1,然后再返回结果值,显示结果为4
$a++ 后置递增 $a = 5;
echo $a++;
表示先返回变量$a的值,然后再加1,显示结果为5
$a— 后置递减 $a = 5;
echo $a—;
表示先返回变量$a的值,然后再减1,显示结果为5
<?php
header("content-type:text/html;charset=utf-8");

$age = 10;

echo ++$age;

结果为:
image.png
image.png

3.1.7 三元运算符

三元运算符用于实现简单的逻辑判断。
语法格式:
表达式1 ? 表达式2 : 表达式3
如果 “表达式1” 成立,则执行 “表达式2” ,否则执行 “表达式3”。

<?php
header("content-type:text/html;charset=utf-8");

$age = 15;

$msg = $age>=18?"成年人":"未成年";

echo $msg;

结果为:
image.png
image.png

3.1.8 错误抑制符

错误抑制符“@ ”,用于忽略表达式的错误信息。
语法格式:
@表达式

<?php
header("content-type:text/html;charset=utf-8");

$a = @(5/0);

echo $a;

结果为:
image.png
image.png

3.1.9 PHP运算符优先级

优先级由高到低 运算符
1 ++、—、@
2 !
3 *、/、%
4 +、-
5 <、<=、>、>=
6 ==、!=、===、!==
7 &&、||
8 ??、?:
9 =、+=、-=、*=、/=、%=、.=

3.1.10 PHP参考手册

https://www.php.net/manual/zh/index.php