一尘不染

如何在PHP中回显HTML?

html

我想有条件地输出HTML以生成页面,那么在PHP 4+中回显HTML的多行代码段的最简单方法是什么?我需要使用Smarty这样的模板框架吗?

echo '<html>', "\n"; // I'm sure there's a better way!
echo '<head>', "\n";
echo '</head>', "\n";
echo '<body>', "\n";
echo '</body>', "\n";
echo '</html>', "\n";

阅读 833

收藏
2020-05-10

共1个答案

一尘不染

有几种方法可以在PHP中回显HTML。

1.在PHP标记之间

<?php if(condition){ ?>
     <!-- HTML here -->
<?php } ?>

2.回声中

if(condition){
     echo "HTML here";
}

对于回声,如果您希望在HTML中使用双引号,则必须使用单引号回声,如下所示:

echo '<input type="text">';

或者,您可以像这样逃避它们:

echo "<input type=\"text\">";

3. Heredocs

4. Nowdocs(从PHP 5.3.0开始)

模板引擎
用于在大多数包含HTML的文档中使用PHP。实际上,PHP的最初目的是成为一种模板语言。因此,使用PHP可以使用短标签之类的东西来回显变量(例如<?=$someVariable?>)。

还有其他模板引擎(例如Smarty,Twig等)使语法更加简洁(例如{{someVariable}})。

使用模板引擎的主要好处是使设计(演示逻辑)与编码(业务逻辑)分开。从长远来看,这也使代码更整洁,更易于维护。

如果您还有其他问题,请随时发表评论。PHP文档中提供了有关这些内容的进一步阅读。

上帝保佑!


注意:
不鼓励使用PHP短标签<??>因为只有在使用short_open_tagphp.ini配置文件指令启用了PHP短标签或使用该--enable-short-tags选项配。

2020-05-10