0

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

比较

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

和:

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

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

4

5 回答 5

5

答案是不。删除或添加它们根本不会影响代码的执行速度。一点也没有。

如果您关心性能 - 第一步是衡量它,那么您可以进行优化。

于 2013-07-01T12:05:56.837 回答
3

如果您遇到性能问题,您将无法通过删除花括号来解决它们!

于 2013-07-01T12:05:09.080 回答
2

不用担心,编译器会为您优化它们。最好保留它们以提高可读性。

于 2013-07-01T12:04:20.557 回答
2

不,但如果你想优化替换

$c++;

++$c;

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

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

于 2013-07-01T12:06:10.957 回答
0

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

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

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

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

如果您在此之后写了另一行,它将超出范围,if()这就是区别。

于 2013-07-01T12:04:34.810 回答