1

什么更好/更快:

例如:

静态/直接 HTML:

<?php
for($i=0;$i<$sth;$i++) {
?>
<tr>
<td>
<?php echo $content;  ?>
</td>
</tr>
<?php
}
?>

或者

PHP 生成的 HTML:

<?php

for($i=0;$i<$sth;$i++) {

echo "<tr><td>".$content."</td></tr>";

}

?>

我选择哪个选项有关系吗?

谢谢

4

7 回答 7

4

这不是速度问题,它可能会因用例而异,而是使代码干净且可维护。实际上,这两个示例都生成了难以维护和阅读的代码。我建议使用简单轻量级的模板引擎将所有逻辑与表示分离。

于 2012-04-11T09:14:14.867 回答
1

我认为两者之间没有实质性区别,问题应该是“哪个更具可读性”恕我直言,我认为使用 php 和 html 内联比回显 php 可读性差得多。但这只是我的想法。

于 2012-04-11T09:13:29.967 回答
1

更好:生成的html。使用 php 生成的 html 更容易维护和阅读。

更快:没有明显的速度差异。然而,在从数据库等加载内容的大型动态网站上,输出可能需要几分之一秒的时间。但是,您花在更新静态 html 文件上的时间远比编辑动态内容要多得多。

动态:]

于 2012-04-11T09:19:23.070 回答
1

在这种情况下,“PHP 生成的 HTML”会更快,因为您只执行一个回显,而在“静态/直接 HTML”中,您正在执行 $sth 回显。如果 $sth 为零,那么“静态/直接 HTML”会更快。

但说真的,页面被解析和优化/规范化,所以它没有任何区别。使用更少的解析可能会更快,因为上下文切换更少,但这是最小的部分(与运行它相比),因此它的差异可以忽略不计。

只要选择你觉得舒服的风格。

于 2012-04-11T09:19:28.610 回答
1

两个代码代表同一个东西,在速度上没有区别,但是第二个代码可能会快一点,因为代码不包含多个入口和出口标志。

<?php ?>

这将进行得更快。

于 2012-04-11T09:25:04.247 回答
0

第一种方法应该更快,因为它不涉及大量字符串连接。它在代码可读性方面也更好。

于 2012-04-11T09:13:07.173 回答
-1

我认为第一个解决方案:

它更清晰,不需要使用字符串的 php 详细说明来显示简单的静态内容

于 2012-04-11T09:14:23.437 回答