echo语句中的PHP代码优化技术

echo语句中的PHP代码优化技术,php,Php,我正在从头开始编写一个php站点。 我不清楚以下两个代码在服务器负载和执行速度方面是完全相同还是不同 代码1: <ul> <?php $i =0; while($i < 10){ echo '<li>'.$row['database_data'].'</li>'; $i++; } ?> </ul> 代码2: <ul> <?php $i =0; w

我正在从头开始编写一个php站点。 我不清楚以下两个代码在服务器负载和执行速度方面是完全相同还是不同

代码1:

<ul>
<?php
    $i =0; 
    while($i < 10){
        echo '<li>'.$row['database_data'].'</li>';
        $i++;
    }
?>
</ul>
代码2:

<ul>
<?php
$i =0; 
while($i < 10)
{ ?>
<li><?php echo $row['database_data'];?></li>
<?php
$i++;
}
?>
</ul>

编辑:通过@pemap modder链接的线程似乎有正确的答案,手册说明:

对于输出大块文本,退出PHP解析模式通常比通过echo或print发送所有文本更有效

我的quick测试的第一个更快

  • 第一版输出:所用时间:0.14秒
  • 第二版输出:所用时间:0.17秒

我认为这样做的原因是因为你不会经常跳进/跳出PHP,这是基于我所学的,这是最好的方法。如果内存不断地从PHP跳到HTML再跳回来,会减慢解释器的速度,尽管如果不进一步研究,我无法完全证实这一点。

如果不进行测试,我不知道这两种方法之间的性能差异,但是第二种方法会使代码更难阅读和维护。在这种情况下,性能差异可以忽略不计。而且,这看起来很像过早优化,可能会重复它们在“速度”方面没有什么不同。“速度”并不取决于PHP的执行,而是取决于您传输的数据量以及浏览器呈现数据的速度。而且,这两个代码片段的读、维护和写都同样难看。