【发布时间】:2017-10-16 08:12:13
【问题描述】:
我发现自己用 PHP 编写了很多返回 HTML 代码的函数。它们可能看起来像这样:
function html_site_head()
{
return
"
<div id=\"site_header\">
<div id=\"site_header_inner\">
<div id=\"site_header_logo\"></div>
<div id=\"site_header_countdown\">BARE XX DAGER IGJEN</div>
</div>
</div>
";
}
现在我可以发誓我已经看到了用 PHP 编写长字符串的更好方法。我喜欢python的做法:
return """
<div id="site_header">
<div id="site_header_inner">
<div id="site_header_logo"></div>
<div id="site_header_countdown">BARE XX DAGER IGJEN</div>
</div>
</div>
"""
因为您不必转义引号。另一种方法是使用单引号,但这意味着不直接在字符串中使用 PHP 变量。我发誓我在 PHP 中见过这样的东西:
return <<<
<div id="site_header">
<div id="site_header_inner">
<div id="site_header_logo"></div>
<div id="site_header_countdown">BARE XX DAGER IGJEN</div>
</div>
</div>
或类似的东西。有人可以刷新我的记忆吗?
谢谢
【问题讨论】:
-
恕我直言,如果您的 PHP 脚本像这样输出“长 HTML 字符串”,那么您做错了什么。您应该将逻辑(PHP 代码)和 HTML 分开。在这种情况下,将 HTML 放在一个单独的文件中,并在需要时包含它。
-
php.net/heredoc 将为您指明正确的方向。但简而言之,标签
-
放弃手动编写 HTML 并使用
DOMDocument是一种选择。