用PHP's echo写HTML和写普通HTML在性能上有什么区别吗?


Would writing HTML with PHP's echo vs writing plain HTML cause any differences in performance?

哪个在CPU优化方面对web服务器更好?编写纯HTML和插入PHP代码在这里和那里?

<script type="text/javascript">$(document).ready(function(){$('#search').focus();});</script>
<div id="default">
    <div class="left">
        <?include(DIR_DIV.'facebook.php')?>
    </div>
    <div class="right">
        <?include(DIR_ADS.'google.300x250.php')?>
    </div>
    <div class="sep"></div>
</div>

或者在PHP中使用echo编写所有的HTML ?

echo '<script type="text/javascript">$(document).ready(function(){$(''#search'').focus();});</script>';
echo '<div id="default">';
    echo '<div class="left">';
        include(DIR_ADS.'google.300x250.php');
    echo '</div>';
    echo '<div class="right">';
        include(DIR_DIV.'facebook.php');
    echo '</div>';
    echo '<div class="sep"></div>';
echo '</div>'

这种差异重要还是不重要?

最后,这种差异是重要的还是微不足道的?

这与性能无关,完全无关紧要。

这确实关系到可读性——我发现第一个块远比第二个块更清晰。像这样将HTML包装到PHP代码中是没有意义的——首先,它变得更难调试。

第一个块可以称为php模板,第二个块是纯php。

这真的取决于你将写更多。如果HTML -优先使用,如果PHP仍然优先使用,只需将其分离到不同的文件并用作模板:)

如果您使用echo编写整个页面(并且是一个复杂的页面),那么可能会增加一点开销,因为所有这些行都需要在服务器端执行。

由于另一个答案中提到的可读性问题,我尽量避免使用这种方法,尽管可能在某些情况下(例如必须基于某些值进行分支)您可能需要使用这种方法。

当涉及到服务器如何看待它时,两者之间确实没有区别。这一切都归结于更新它有多容易。单引号和双引号可能会出现问题,因为您需要确保转义用于包含html的相同类型的引号。像

echo " <span class='"first'">".$first."</span>";