php语法:使用||进行程序流控制操作者

时间:2012-03-09 19:18:33

标签: php syntax flow-control

  

可能重复:
  PHP short circuit lazy evaluation, where is it in the php.net manual?
  PHP “or” Syntax

我见过有人使用||运算符作为程序流控制,如下所示:

function() || die("message");

如果die("message");返回function()false将会运行。此外,它似乎仅适用于die();exit();,否则解释器将抛出“语法错误”消息。

我想知道这个叫什么,我在哪里可以找到它的行为文档。

3 个答案:

答案 0 :(得分:1)

它只是一个布尔OR表达式。用法利用了一种称为短切的行为,如果表达式的第一部分求值为true,则后半部分不会被评估,因为OR表达式已经true

答案 1 :(得分:0)

这只是逻辑OR。如果function()返回true,则表达式的其余部分不会被评估。

答案 2 :(得分:0)

这是由于OR / ||是一个具有左优先权的运算符(参见此处:http://www.php.net/manual/en/language.operators.precedence.php),因为左边被评估为真,评估时没有意义正确的表达方式总是正确的。