Php “一个”中的多个表达式如何;如果;声明被解释了吗?

Php “一个”中的多个表达式如何;如果;声明被解释了吗?,php,if-statement,expression,Php,If Statement,Expression,基本上 这是: <?PHP if (false && crazyFunction()) : ?> 同: <?PHP if (false) : ?> <?PHP if (crazyFunction()) : ?> 如果在第一个示例中计算为FALSE,它是否仍将继续计算“crazyFunction”?该&&运算符是一个shotcircuit运算符,这意味着它将在知道结果将为FALSE时停止 这意味着,如果左侧部分的计算结果为fa

基本上

这是:

<?PHP if (false && crazyFunction()) : ?>

同:

<?PHP if (false) : ?>
    <?PHP if (crazyFunction()) : ?>


如果在第一个示例中计算为FALSE,它是否仍将继续计算“crazyFunction”?

&&
运算符是一个shotcircuit运算符,这意味着它将在知道结果将为FALSE时停止


这意味着,如果左侧部分的计算结果为false,它将停止并返回false<在本例中,永远不会调用code>crazyFunction()。

一旦知道布尔表达式的值,就不再执行它

请注意,在旧式mysql连接中有一个(已弃用)示例:

$db=mysql_connect_db('...') or die('Database error');
如果在第一部分
mysql\u connect
返回的内容不是
FALSE
、0、
NULL
等,则它不会执行此
die()


(无论使用
mysql\uquot.
函数是否正确)

差不多。请参阅。如果始终返回true,那么如果您的值为false(上面的示例为int),它将执行代码,否则它将执行“代码的其他部分”中的代码@KarolyHorvath我编辑了它,因此它现在是一个答案。