逻辑运算符,||或 OR?

我记得不久前读过关于逻辑运算符的文章,在 的情况下,使用比(反之亦然)更好。OR||or

当它回到我身边时,我不得不在我的项目中使用它,但我不记得推荐了哪个运算符,或者它是否是真的。

哪个更好,为什么?


答案 1

没有“更好”,但更常见的是 。它们具有不同的优先级,并且会像人们通常期望的那样工作。||||

另请参见:逻辑运算符下面的示例取自该处):

// The result of the expression (false || true) is assigned to $e
// Acts like: ($e = (false || true))
$e = false || true;

// The constant false is assigned to $f and then true is ignored
// Acts like: (($f = false) or true)
$f = false or true;

答案 2

它们用于不同的目的,实际上具有不同的运算符优先级。和 运算符用于布尔条件,而 和 用于控制流。&&||andor

例如,下面是一个布尔条件:

if ($foo == $bar && $baz != $quxx) {

这与控制流不同:

doSomething() or die();

推荐