PHP 中的短路评估
PHP 解释器实现了 && (AND) 和 || 等逻辑运算符的短路评估。 (或者)。这意味着一旦可以明确确定结果,解释器将停止评估条件。
考虑以下代码片段:
if (is_valid($string) && up_to_length($string) && file_exists($file)) { ...... }
如果 is_valid($string) 计算结果为 false,则解释器不会执行剩余的条件,up_to_length($string) 和 file_exists($file)。这是因为如果任何操作数为 false,&& 的计算结果为 false。通过执行短路评估,PHP 避免了不必要的函数调用和潜在的昂贵操作。
要确认短路评估,您可以尝试以下代码:
function saySomething() { echo 'hi!'; return true; } if (false && saySomething()) { echo 'statement evaluated to true'; }
Since false && saySomething () 是一个假表达式,saySomething() 函数不会被执行,并且“hi!”不会被打印。
以上是短路评估如何优化PHP中的逻辑运算?的详细内容。更多信息请关注PHP中文网其他相关文章!