PHP中的逻辑“与”运算有两种形式:AND 和 &&,同样“或”运算也有OR和||两种形式。 如果是单独两个表达式参加的运算,两种形式的结果完全相同,例如 $a AND $b和$a && $b没有任何区别。同样的$a OR $b和$a || $b也完全一样。但两种形式的逻辑运算符优先级不同,这四个符号的优先允许从高到低是:&&、||、AND、OR。特别注意,这句话要仔细理解。举例: 1.
$a || $b AND $c || $d
相当于:
($a || $b) AND ($c || $d)
2.
$result = isset($a) and is_array($a) ? $a : []
相当于
$result = isset($a) and ( is_array($a) ? $a : [] )
3.
$result = isset($a) && is_array($a) ? $a : []
相当于
$result = (isset($a) && is_array($a)) ? $a : []