PHP中||与or的区别

一直认为PHP中“or”和“||”是可以划等号的,其实不然,它们存在一个优先级的差别。下面通过一个例子说明它们的差异:

<?php
$a = false || true; //'||'的优先级大于'=',先执行 false || true,然后赋值$a
$b = false or true; // 'or'的优先级小于'=',先将false赋值给$b
var_dump($a).PHP_EOL;//true
var_dump($b);//false
?>
执行后,$a为true,而$b为false。这是因为“||”的优先级大于“=”,先执行 false || true,然后将执行后的结果true赋值给$a。而“or”的优先级小于“=”,先将false赋值给$b,因此$b就为false

但愿诸位博友也别再这里采坑了额。稍微注意下既可。

猜你喜欢

转载自www.cnblogs.com/phpper/p/9142423.html