第四章:第12节 PHP运算符-逻辑运算符、运算符优先级表

更新于:2017-01-23 19:18:14

1.png


逻辑运算符最常用的就这三种写法:逻辑非!$a、逻辑与$a && $b、逻辑或$a || $b。

$a and $b、$a or $b、$a xor $b楠神也都没用过,很少用到,想了解的自己看手册吧。


逻辑运算符都是针对布尔类型的值进行的运算,如果不是布尔值,就会转换为布尔值。


逻辑非!$a


!true ==> false

!false ===>true


1.png


结果:


1.png

看示例应该明白,逻辑非就是取反。


逻辑与$a && $b


规则(真值表):

true && true   ==> true;

true && false   ==>false

false && true   ==>false;

false && false  ==>false;

只有两个都是true,结果才是true

只要有一个是false,结果就是false


1.png


结果:


1.png


逻辑或$a || $b


规则(真值表):

true || true   ==> true;

true || false   ==>true

false || true   ==>true;

false || false  ==>false;

只有两个都是false,结果才是false

只要有一个是true,结果就是true


1.png

结果:

1.png

细节说明:

逻辑与,当第一个是false,它就直接返回false,不再去验证第二个。

逻辑或,当第一个是true,它就直接返回true了,不再去验证第二个。


这样的情况称之为短路,这个细节很重要,不注意的话会影响程序效果的,看示例:


1.png

结果:

1.png

赋值运算符比逻辑运算符优先级低,所以我用小括号提高它的优先级。

在我们的手册里可以找到这张运算符优先级表:


1.png

本节学习代码》》》