PHP - 单个语句的卷曲括号?哪个更快?

时间:2013-07-01 12:02:17

标签: php if-statement

我有一个包含大量单个IF语句的PHP代码。 TO-DO主要是单个语句,在单个分号后结束。目前他们都有花括号。我想知道删除它们是否会影响代码的执行速度。

比较

if( $a == $b ) {
    $c++;
}

使用:

if($a == $b) $c++;

代码很大,所以删除它们需要我很长时间,所以我想在花上几个小时之前就会问。

5 个答案:

答案 0 :(得分:5)

答案是否定的。删除或添加它们不会影响代码的执行速度。甚至没有一点。

如果您关注效果 - 第一步是measure it,那么您可以进行优化。

答案 1 :(得分:3)

如果您遇到性能问题,则无法通过删除大括号来解决这些问题!

答案 2 :(得分:2)

别担心,编译器会为您优化它们。最好保持它们的可读性。

答案 3 :(得分:2)

不,但如果你想优化替换

$c++;

++$c;

此外,根据您的方案(如果此脚本经常执行并且不是一次性执行性能问题),您可以使用PHP加速器,这样您就不必每次都编译脚本。 (我过去使用APC,工作得很好)

请参阅此PHP加速器列表:http://en.wikipedia.org/wiki/List_of_PHP_accelerators

答案 4 :(得分:0)

事情都是一样的。在这种情况下

if( $a == $b ) {
    $c++;
}

如果要在if语句中包含多行代码,则必须将它们括在大括号中。否则if语句后面的下一行将被视为if()的主体。

if( $a == $b )
    $c++;

如果你在此之后写了另一行,那么它将超出if()的范围,这就是差异。