短路运算的精髓就是
逻辑与(&&)->检查运算符第一个表达式是否为false,如果false直接返回false,后续的表达式直接忽略。
逻辑或(||)->检查运算符第一个表达式是否为true,如果是true直接返回true,后续表达式直接忽略。
PS:&&的优先级高于and、||的优先级高于or、等号(=)的优先级高于and和or
看一段代码的时候,看到这样一行代码:
$removeHead && $this->html = $this->_removeHead($this->html);
抽象成 $A && $B = $C 。
学了几年php,竟然不知道什么意思了?
惭愧呀 !
查询方知
相当于
if ($A) {
$B = $C;
}
经网友OSC 网友 @Fenying 告知,这叫 短路表达式 (基于逻辑运算符的算路性质)。
以( A && B )为例:
如果左边A为 假 时不执行 B
如果左边A为 真时 执行 B。
感谢 @Fenying
原文出处:http://www.youyong.top/article/1159634782438