在 PHP 中,逻辑运算符是用于连接多个条件(一般来讲就是关系表达式),最终的结果也是一个 bool 值。
运算符 | 说明 | 范例 |
---|---|---|
and | 逻辑与 | A and B |
or | 逻辑或 | A or B |
xor | 异或 | A xor B |
&& | 逻辑与 | A && B |
|| | 逻辑或 | A || B |
! | 逻辑非 | !A |
逻辑与,即 and 和 &&,如果 A 和 B 的值都为真,那么结果为真,否则结果为假。如果 A 的值为假,那么不会计算 B 的值,这叫做短路。
逻辑或,即 or 和 ||,只要 A 和 B 的值一个为真,那么结果为真,否则结果为假。如果 A 的值为真,那么不会计算 B 的值,这叫做短路。
逻辑异或,即 xor,如果 A 和 B 的值有且只有一个为真,那么结果为真,否则结果为假。
逻辑非,如果原来 A 的值为真,那么结果为假。如果原来 A 的值为假,那么结果为真。
使用 and 和 && 运算符,实现逻辑与判断
<?php
echo "嗨客网(www.haicoder.net)<br>";
$age = 40;
$a = $age > 30 and $age < 50;
$b = $age > 40 && $age < 50;
var_dump($a);
echo "<br>";
var_dump($b);
程序运行后,控制台输出如下:
我们分别使用了逻辑与运算符 and 和 &&,实现了逻辑与的判断,使用逻辑与判断,只有当两个条件都为真时,结果才为真。
使用 or 和 || 运算符,实现逻辑或判断
<?php
echo "嗨客网(www.haicoder.net)<br>";
$age = 40;
$a = $age > 30 or $age < 50;
$b = $age > 40 || $age < 50;
var_dump($a);
echo "<br>";
var_dump($b);
程序运行后,控制台输出如下:
我们分别使用了逻辑或运算符 or 和 ||,实现了逻辑或的判断,使用逻辑或判断,只要一个条件为真时,结果就为真。
使用 ! 运算符,实现逻辑非判断
<?php
echo "嗨客网(www.haicoder.net)<br>";
$b = true;
$c = !$b;
var_dump($c);
echo "<br>";
程序运行后,控制台输出如下:
我们使用了逻辑非运算符,实现了逻辑非运算,原来为 true 的变量,经过逻辑非运算后,变成了 false。
逻辑与,即 and 和 &&,如果 A 和 B 的值都为真,那么结果为真,否则结果为假。如果 A 的值为假,那么不会计算 B 的值,这叫做短路。
逻辑或,即 or 和 ||,只要 A 和 B 的值一个为真,那么结果为真,否则结果为假。如果 A 的值为真,那么不会计算 B 的值,这叫做短路。
逻辑异或,即 xor,如果 A 和 B 的值有且只有一个为真,那么结果为真,否则结果为假。
逻辑非,如果原来 A 的值为真,那么结果为假。如果原来 A 的值为假,那么结果为真。