我有一个函数:
function getMilk() {
if($condition == true)
return "Milk for you, madam";
return false;
}
示例 1:
if(getMilk())
echo getMilk();
第一个示例是否让 PHP 运行两次牛奶?
示例 2:
echo getMilk(); // don't check for milk first, just get it if they have it
如果我是 PHP,我宁愿得到第二个例子。这样我就不必跑到商店买牛奶,然后再跑一次去买。
示例 2 会更快/更好,还是无所谓?
最佳答案
是的,您调用了该函数两次。通过执行以下操作之一避免这样做(因为调用该函数的成本可能很高):
$getMilk = getMilk();
if($getMilk) echo $getMilk;
您可以将其缩减为一行(但不可读)格式:
if ($getMilk = getMilk()) echo $getMilk;
您还可以使用内联 if
三元,带 fallthrough:
echo getMilk()?:""; //Will echo the result of getMilk() if there is any or nothing.
关于php - 问两次会带来不好的表现吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46341083/