PHP:运算符

运算符就是用来做运算的符号,比如加减乘除。

5.1 算术运算符

代码示例

<?php
$a = 10;
$b = 3;

echo $a + $b;  // 加法,13
echo "<br>";
echo $a - $b;  // 减法,7
echo "<br>";
echo $a * $b;  // 乘法,30
echo "<br>";
echo $a / $b;  // 除法,3.333...
echo "<br>";
echo $a % $b;  // 取余数,1
echo "<br>";
echo $a ** $b; // 乘方,1000(PHP 5.6+)
?>

5.2 递增/递减运算符

代码示例

<?php
$x = 5;

// ++在前:先加1,再返回
echo ++$x;  // 输出 6

// ++在后:先返回,再加1
$y = 5;
echo $y++;  // 输出 5
echo "<br>";
echo $y;    // 输出 6

// --同理
$z = 5;
echo --$z;  // 输出 4
?>

5.3 赋值运算符

代码示例

<?php
$a = 10;

$a += 5;  // 等同于 $a = $a + 5; → 15
$a -= 3;  // 等同于 $a = $a - 3; → 12
$a *= 2;  // 等同于 $a = $a * 2; → 24
$a /= 4;  // 等同于 $a = $a / 4; → 6
$a %= 2;  // 等同于 $a = $a % 2; → 0
$a .= "abc";  // 字符串拼接
?>

5.4 比较运算符

比较运算符返回 true 或 false。

代码示例

<?php
$a = 10;
$b = "10";

var_dump($a == $b);   // 相等(只比较值),true
var_dump($a === $b);  // 全等(比较值和类型),false
var_dump($a != $b);   // 不等,false
var_dump($a !== $b);  // 不全等,true
var_dump($a < 20);    // 小于,true
var_dump($a > 5);     // 大于,true
var_dump($a <= 10);   // 小于等于,true
var_dump($a >= 10);   // 大于等于,true
?>

重要提示

  • == 只比较值,10 == "10" 是 true
  • === 比较值和类型,10 === "10" 是 false
  • 建议尽量用 ===

5.5 逻辑运算符

代码示例

<?php
$age = 20;
$hasMoney = true;

// && 且:两个都为true才是true
var_dump($age > 18 && $hasMoney);  // true

// || 或:只要一个为true就是true
var_dump($age > 18 || $hasMoney);  // true

// ! 非:取反
var_dump(!$hasMoney);  // false
?>

5.6 字符串运算符

代码示例

<?php
$a = "Hello";
$b = "World";

// 用 . 拼接
echo $a . " " . $b;  // Hello World

// 拼接赋值
$c = "Hello";
$c .= " World";  // 等同于 $c = $c . " World"
echo $c;
?>

5.7 三元运算符(简写的if)

代码示例

<?php
$age = 18;

// 写法1:完整形式
$result = ($age >= 18) ? "成年" : "未成年";
echo $result;  // 成年

// 写法2:PHP 7+ 空合并运算符
$name = $_GET['name'] ?? "匿名";
echo $name;

// 写法3:PHP 7+ 太空船运算符
echo 1 <=> 2;  // -1
echo 2 <=> 2;  // 0
echo 3 <=> 2;  // 1
?>

本章代码汇总

文件位置:examples/05-operators.php

<?php
// 第5章完整示例

echo "<h3>1. 算术运算符</h3>";
$a = 10;
$b = 3;
echo "$a + $b = " . ($a + $b) . "<br>";
echo "$a - $b = " . ($a - $b) . "<br>";
echo "$a * $b = " . ($a * $b) . "<br>";
echo "$a / $b = " . ($a / $b) . "<br>";
echo "$a % $b = " . ($a % $b) . "<br>";

echo "<h3>2. 比较运算符</h3>";
$x = 10;
$y = "10";
echo "<pre>";
var_dump($x == $y);
var_dump($x === $y);
echo "</pre>";

echo "<h3>3. 三元运算符</h3>";
$age = 20;
echo $age >= 18 ? "成年" : "未成年";
?>

本章小结

✅ 会做加减乘除运算
✅ 知道 == 和 === 的区别
✅ 会用 &&、||、! 逻辑运算
✅ 会用三元运算符简写代码

更多推荐