我知道在两种情况下性能差异都会非常小,但我想知道哪种是用PHP编写条件的更实用,性能更高的版本。
if(condition){
result;
}
VS
if(condition)
result;
答案 0 :(得分:7)
两者完全相同,它的编码风格与性能无关。适应您喜欢的风格。
一些提示工具建议使用第一种方式来避免这样的错误:
if(condition)
result;
foo; // Nothing to do with the condition but you can get confused.
如果你使用花括号,那就不会发生这种情况:
if(condition){
result;
}
foo; // Nothing to do with the condition but now it's clear.
我不会在if
中使用花括号来表示一个语句,因为这种情况对于非新手来说并不难避免。
答案 1 :(得分:3)
一行代码不需要大括号;但是对一行代码使用大括号也是一种很好的做法。两者都是一样的。
答案 2 :(得分:2)
没有理由甚至认为这种优化。无论您选择哪种方式(取决于您个人喜欢的风格),它们的表现都会完全相同。
答案 3 :(得分:2)
老实说,差异是微不足道的,如果有的话。如果没有其他原因,我会永远你{}。如果现在任何系统都会产生重大影响,我会感到惊讶。
答案 4 :(得分:0)
从结果和性能的角度来看它们是相同的,但是你使用
if(condition)
result;
只有你内部有一个陈述,如果你有更多的陈述使用括号
答案 5 :(得分:0)
如果expression的计算结果为TRUE,那么PHP将执行语句,如果计算结果为FALSE,它将忽略它。
如果$ a大于$ b,则以下示例将显示a大于b:
<?php
if ($a > $b)
echo "a is bigger than b";
?>
通常,您希望有条件地执行多个语句。当然,没有必要用if子句包装每个语句。相反,您可以将多个语句分组到语句组中。例如,如果$ a大于$ b,则此代码将显示大于b的值,然后将$ a的值分配给$ b:
<?php
if ($a > $b) {
echo "a is bigger than b";
$b = $a;
}
?>
如果语句可以在其他if语句中无限嵌套,这为您提供了条件执行程序各个部分的完全灵活性。
供参考使用php.net