PHP 运算符 实例详解
php基础 2022-05-11 13:21:21小码哥的IT人生shichen
PHP 运算符
本节展示了可用于 PHP 脚本中的各种运算符.
PHP 算数运算符
运算符 | 名称 | 例子 | 结果 | 显示结果 |
---|---|---|---|---|
+ | 加法 | $x + $y | $x 与 $y 求和 | 查看完整实例1 |
- | 减法 | $x - $y | $x 与 $y 的差数 | 查看完整实例2 |
* | 乘法 | $x * $y | $x 与 $y 的乘积 | 查看完整实例3 |
/ | 除法 | $x / $y | $x 与 $y 的商数 | 查看完整实例4 |
% | 取模 | $x % $y | $x 除 $y 的余数 | 查看完整实例5 |
下例展示了使用不同算数运算符的不同结果:
示例代码:
<?php
$x=17;
$y=8;
echo ($x + $y); // 输出 25
echo ($x - $y); // 输出 9
echo ($x * $y); // 输出 136
echo ($x / $y); // 输出 2.125
echo ($x % $y); // 输出 1
?>
完整实例:
<!DOCTYPE html>
<html>
<body>
<?php
$x=17;
$y=8;
echo ($x + $y);
echo "<br>";
echo ($x - $y);
echo "<br>";
echo ($x * $y);
echo "<br>";
echo ($x / $y);
echo "<br>";
echo ($x % $y);
?>
</body>
</html>
PHP 赋值运算符
PHP 赋值运算符用于向变量写值。
PHP 中基础的赋值运算符是 "="。这意味着右侧赋值表达式会为左侧运算数设置值。
赋值 | 等同于 | 描述 | 显示结果 |
---|---|---|---|
x = y | x = y | 右侧表达式为左侧运算数设置值。 | 查看完整实例6 |
x += y | x = x + y | 加 | 查看完整实例7 |
x -= y | x = x - y | 减 | 查看完整实例8 |
x *= y | x = x * y | 乘 | 查看完整实例9 |
x /= y | x = x / y | 除 | 查看完整实例10 |
x %= y | x = x % y | 模数 | 查看完整实例11 |
下例展示了使用不同赋值运算符的不同结果:
示例代码:
<?php
$x=17;
echo $x; // 输出 17
$y=17;
$y += 8;
echo $y; // 输出 25
$z=17;
$z -= 8;
echo $z; // 输出 9
$i=17;
$i *= 8;
echo $i; // 输出 136
$j=17;
$j /= 8;
echo $j; // 输出 2.125
$k=17;
$k %= 8;
echo $k; // 输出 1
?>
完整实例:
<!DOCTYPE html>
<html>
<body>
<?php
$x=10;
echo $x;
echo "<br>";
$y=20;
$y += 100;
echo $y;
echo "<br>";
$z=50;
$z -= 25;
echo $z;
echo "<br>";
$i=5;
$i *= 6;
echo $i;
echo "<br>";
$j=10;
$j /= 5;
echo $j;
echo "<br>";
$k=15;
$k %= 4;
echo $k;
?>
</body>
</html>
PHP 字符串运算符
运算符 | 名称 | 例子 | 结果 | 显示结果 |
---|---|---|---|---|
. | 串接 | $txt1 = "Hello" $txt2 = $txt1 . " world!" | 现在 $txt2 包含 "Hello world!" | 查看完整实例12 |
.= | 串接赋值 | $txt1 = "Hello" $txt1 .= " world!" | 现在 $txt1 包含 "Hello world!" | 查看完整实例13 |
下例展示了使用字符串运算符的结果:
示例代码:
<?php
$a = "Hello";
$b = $a . " world!";
echo $b; // 输出 Hello world!
$x="Hello";
$x .= " world!";
echo $x; // 输出 Hello world!
?>
完整实例:
<!DOCTYPE html>
<html>
<body>
<?php
$a = "Hello";
$b = $a . " world!";
echo $b; // 输出 Hello world!
echo "<br>";
$x="Hello";
$x .= " world!";
echo $x; // 输出 Hello world!
?>
</body>
</html>
PHP 递增/递减运算符
运算符 | 名称 | 描述 | 显示结果 |
---|---|---|---|
++$x | 前递增 | $x 加一递增,然后返回 $x | 查看完整实例14 |
$x++ | 后递增 | 返回 $x,然后 $x 加一递增 | 查看完整实例15 |
--$x | 前递减 | $x 减一递减,然后返回 $x | 查看完整实例16 |
$x-- | 后递减 | 返回 $x,然后 $x 减一递减 | 查看完整实例17 |
下例展示了使用不同递增/递减运算符的不同结果:
示例代码:
<?php
$x=17;
echo ++$x; // 输出 18
$y=17;
echo $y++; // 输出 17
$z=17;
echo --$z; // 输出 16
$i=17;
echo $i--; // 输出 17
?>
完整实例:
<!DOCTYPE html>
<html>
<body>
<?php
$x=17;
echo ++$x;
echo "<br>";
$y=17;
echo $y++;
echo "<br>";
$z=17;
echo --$z;
echo "<br>";
$i=17;
echo $i--;
?>
</body>
</html>
PHP 比较运算符
PHP 比较运算符用于比较两个值(数字或字符串):
运算符 | 名称 | 例子 | 结果 | 显示结果 |
---|---|---|---|---|
== | 等于 | $x == $y | 如果 $x 等于 $y,则返回 true。 | 查看完整实例18 |
=== | 全等(完全相同) | $x === $y | 如果 $x 等于 $y,且它们类型相同,则返回 true。 | 查看完整实例19 |
!= | 不等于 | $x != $y | 如果 $x 不等于 $y,则返回 true。 | 查看完整实例20 |
<> | 不等于 | $x <> $y | 如果 $x 不等于 $y,则返回 true。 | 查看完整实例21 |
!== | 不全等(完全不同) | $x !== $y | 如果 $x 不等于 $y,或它们类型不相同,则返回 true。 | 查看完整实例22 |
> | 大于 | $x > $y | 如果 $x 大于 $y,则返回 true。 | 查看完整实例23 |
< | 小于 | $x < $y | 如果 $x 小于 $y,则返回 true。 | 查看完整实例24 |
>= | 大于或等于 | $x >= $y | 如果 $x 大于或者等于 $y,则返回 true. | 查看完整实例25 |
<= | 小于或等于 | $x <= $y | 如果 $x 小于或者等于 $y,则返回 true。 | 查看完整实例26 |
下例展示了使用某些比较运算符的不同结果:
示例代码:
<?php
$x=17;
$y="17";
var_dump($x == $y);
echo "<br>";
var_dump($x === $y);
echo "<br>";
var_dump($x != $y);
echo "<br>";
var_dump($x !== $y);
echo "<br>";
$a=17;
$b=8;
var_dump($a > $b);
echo "<br>";
var_dump($a < $b);
?>
完整实例:
<!DOCTYPE html>
<html>
<body>
<?php
$x=17;
$y="17";
var_dump($x == $y); // 因为值相等,返回 true
echo "<br>";
var_dump($x === $y); // 因为类型不相等,返回 false
echo "<br>";
var_dump($x != $y); // 因为值相等,返回 false
echo "<br>";
var_dump($x !== $y); // 因为值不相等,返回 true
echo "<br>";
$a=17;
$b=8;
var_dump($a > $b);
echo "<br>";
var_dump($a < $b);
?>
</body>
</html>
PHP 逻辑运算符
运算符 | 名称 | 例子 | 结果 | 显示结果 |
---|---|---|---|---|
and | 与 | $x and $y | 如果 $x 和 $y 都为 true,则返回 true。 | 查看完整实例27 |
or | 或 | $x or $y | 如果 $x 和 $y 至少有一个为 true,则返回 true。 | 查看完整实例28 |
xor | 异或 | $x xor $y | 如果 $x 和 $y 有且仅有一个为 true,则返回 true。 | 查看完整实例29 |
&& | 与 | $x && $y | 如果 $x 和 $y 都为 true,则返回 true。 | 查看完整实例30 |
|| | 或 | $x || $y | 如果 $x 和 $y 至少有一个为 true,则返回 true。 | 查看完整实例31 |
! | 非 | !$x | 如果 $x 不为 true,则返回 true。 | 查看完整实例32 |
PHP 数组运算符
PHP 数组运算符用于比较数组:
运算符 | 名称 | 例子 | 结果 | 显示结果 |
---|---|---|---|---|
+ | 联合 | $x + $y | $x 和 $y 的联合(但不覆盖重复的键) | 查看完整实例33 |
== | 相等 | $x == $y | 如果 $x 和 $y 拥有相同的键/值对,则返回 true。 | 查看完整实例34 |
=== | 全等 | $x === $y | 如果 $x 和 $y 拥有相同的键/值对,且顺序相同类型相同,则返回 true。 | 查看完整实例35 |
!= | 不相等 | $x != $y | 如果 $x 不等于 $y,则返回 true。 | 查看完整实例36 |
<> | 不相等 | $x <> $y | 如果 $x 不等于 $y,则返回 true。 | 查看完整实例37 |
!== | 不全等 | $x !== $y | 如果 $x 与 $y 完全不同,则返回 true。 | 查看完整实例38 |
下例展示了使用不同数组运算符的不同结果:
示例代码:
<?php
$x = array("a" => "apple", "b" => "banana");
$y = array("c" => "orange", "d" => "peach");
$z = $x + $y; // $x 与 $y 的联合
var_dump($z);
var_dump($x == $y);
var_dump($x === $y);
var_dump($x != $y);
var_dump($x <> $y);
var_dump($x !== $y);
?>
完整实例:
<!DOCTYPE html>
<html>
<body>
<?php
$x = array("a" => "apple", "b" => "banana");
$y = array("c" => "orange", "d" => "peach");
$z = $x + $y; // $x 与 $y 的联合
var_dump($z);
echo "<br>";
var_dump($x == $y);
echo "<br>";
var_dump($x === $y);
echo "<br>";
var_dump($x != $y);
echo "<br>";
var_dump($x <> $y);
echo "<br>";
var_dump($x !== $y);
?>
</body>
</html>
实例汇总
完整实例1:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
echo $x + $y;
?>
</body>
</html>
完整实例2:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
echo $x - $y;
?>
</body>
</html>
完整实例3:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
echo $x * $y;
?>
</body>
</html>
完整实例4:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
echo $x / $y;
?>
</body>
</html>
完整实例5:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
echo $x % $y;
?>
</body>
</html>
完整实例6:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
echo $x;
?>
</body>
</html>
完整实例7:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$x += 8;
echo $x;
?>
</body>
</html>
完整实例8:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$x -= 8;
echo $x;
?>
</body>
</html>
完整实例9:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
echo $x * $y;
?>
</body>
</html>
完整实例10:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$x /= 8;
echo $x;
?>
</body>
</html>
完整实例11:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$x %= 8;
echo $x;
?>
</body>
</html>
完整实例12:
<!DOCTYPE html>
<html>
<body>
<?php
$txt1 = "Hello";
$txt2 = " world!";
echo $txt1 . $txt2;
?>
</body>
</html>
完整实例13:
<!DOCTYPE html>
<html>
<body>
<?php
$txt1 = "Hello";
$txt2 = " world!";
$txt1 .= $txt2;
echo $txt1;
?>
</body>
</html>
完整实例14:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
echo ++$x;
?>
</body>
</html>
完整实例15:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
echo $x++;
?>
</body>
</html>
完整实例16:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
echo --$x;
?>
</body>
</html>
完整实例17:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
echo $x--;
?>
</body>
</html>
完整实例18:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = "17";
var_dump($x == $y); // 返回 true,因为值是相等的
?>
</body>
</html>
完整实例19:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = "17";
var_dump($x === $y); // 返回 false,因为类型不同
?>
</body>
</html>
完整实例20:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = "17";
var_dump($x != $y); // 返回 false,因为值相等
?>
</body>
</html>
完整实例21:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = "17";
var_dump($x <> $y); // 返回 false,因为值相等
?>
</body>
</html>
完整实例22:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = "17";
var_dump($x !== $y); // 返回 true,因为类型不同
?>
</body>
</html>
完整实例23:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
var_dump($x > $y); // 返回 true,因为 $x 大于 $y
?>
</body>
</html>
完整实例24:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
var_dump($x < $y); // 返回 false,因为 $x 大于 $y
?>
</body>
</html>
完整实例25:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 17;
var_dump($x >= $y); // 返回 true,因为 $x 等于 $y
?>
</body>
</html>
完整实例26:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 17;
var_dump($x <= $y); // 返回 true,因为 $x 等于 $y
?>
</body>
</html>
完整实例27:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
if ($x == 17 and $y == 8) {
echo "Hello world!";
}
?>
</body>
</html>
完整实例28:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
if ($x == 17 or $y == 6) {
echo "Hello world!";
}
?>
</body>
</html>
完整实例29:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
if ($x == 17 xor $y == 8) {
echo "Hello world!";
}
?>
</body>
</html>
完整实例30:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
if ($x == 17 && $y == 8) {
echo "Hello world!";
}
?>
</body>
</html>
完整实例31:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
$y = 8;
if ($x == 17 || $y == 6) {
echo "Hello world!";
}
?>
</body>
</html>
完整实例32:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 17;
if ($x !== 6) {
echo "Hello world!";
}
?>
</body>
</html>
完整实例33:
<!DOCTYPE html>
<html>
<body>
<?php
$x = array("a" => "apple", "b" => "banana");
$y = array("c" => "orange", "d" => "peach");
print_r($x + $y); // 联合 $x 和 $y
?>
</body>
</html>
完整实例34:
<!DOCTYPE html>
<html>
<body>
<?php
$x = array("a" => "apple", "b" => "banana");
$y = array("c" => "orange", "d" => "peach");
var_dump($x == $y);
?>
</body>
</html>
完整实例35:
<!DOCTYPE html>
<html>
<body>
<?php
$x = array("a" => "apple", "b" => "banana");
$y = array("c" => "orange", "d" => "peach");
var_dump($x === $y);
?>
</body>
</html>
完整实例36:
<!DOCTYPE html>
<html>
<body>
<?php
$x = array("a" => "apple", "b" => "banana");
$y = array("c" => "orange", "d" => "peach");
var_dump($x != $y);
?>
</body>
</html>
完整实例37:
<!DOCTYPE html>
<html>
<body>
<?php
$x = array("a" => "apple", "b" => "banana");
$y = array("c" => "orange", "d" => "peach");
var_dump($x <> $y);
?>
</body>
</html>
完整实例38:
<!DOCTYPE html>
<html>
<body>
<?php
$x = array("a" => "apple", "b" => "banana");
$y = array("c" => "orange", "d" => "peach");
var_dump($x !== $y);
?>
</body>
</html>