0

使用 PHP 和 HTML 呈现页面的最有效方法是什么?

连接

$html = '<span><img src="page.png" alt="page" />'.$variable1.'</span>';
echo $html

替换变量

$html = "<span><img src=\"page.png\" alt=\"page\" />{$variable1}</span>";
echo $html;

内联 PHP 标记 - 这似乎并不实用,即使它在大规模上是最有效的

<span><img src="page.png" alt="page" /><?php echo $variable1; ?></span>

请假设您正在生成整个页面。我使用上面的片段作为每种方法的示例。

谢谢!

4

3 回答 3

2

这实际上取决于您尝试实现的目标。

如果只是渲染一个简单的页面,最有效的方法是使用单引号(基于基准)连接代码(即使差异不是那么重要)。

但我猜你正在建立一个网站,你会广泛使用 html+php。如果是这样,我建议您使用模板引擎,或者直接使用 PHP。

当然,使用任何模板引擎都会降低性能,但它会提高项目的可读性并以更好的方式构建它。“性能损失”/“可读性 - 维护”的比率是值得的。你应该去做(同样,如果你打算渲染许多 html 页面)。请参阅MVC 设计模式

现在,对于模板引擎,我建议您直接使用 PHP,因为它最初是为此目的而开发的。您可以找到许多模板引擎最终在模板中使用 php,同样适用于框架。例如,如果您看一下Code Igniter,您会发现模板是由 php 组成的。

现在,出于安全原因,在模板中使用 PHP 很大程度上取决于谁将编辑模板。如果只有你,或者你完全信任的人,你应该去争取。如果您的用户能够编辑模板(出于任何原因),那么我绝对应该避免它,因为他们可以在您的服务器上做任何他们想做的事情,包括访问数据库、查看所有文件(甚至是配置文件)等等

于 2012-05-10T08:09:43.760 回答
1

没有足够的性能差异来衡量或衡量。做最易读的事情。在我的(许多)PHP 应用程序中,我主要使用带有短标签的嵌入式 PHP 替换:

<p><?= $text ?></p>
于 2012-05-10T08:10:58.567 回答
0

最好的方法是:可读和可维护。

话虽如此,我可能会使用模板引擎(如twigsmarty),但如果不可用,我肯定会使用内联 php 标签(如 Zend Framework 视图和 Symfony 成功模板中的视图中使用的那样)。

如果我必须在 php 中生成 html,我会选择sprinft('<img src="%s">", $src');或连接。

我真的,真的不喜欢使用{$var}or $html = "$var"

于 2012-05-10T08:07:09.203 回答