【发布时间】:2026-01-28 11:30:01
【问题描述】:
我有一个输出 HTML 的简单 PHP 函数。
<?php
function get_header() {
?>
<div id="header">
<div class="page-width">
<!-- And a lot more HTML after this line. -->
<?php
}
?>
所以,当我调用get_header() 时,函数会输出 HTML。
调整此函数以将 HTML 作为字符串返回的最简单选项是什么?我需要围绕这个函数创建一个包装器吗?换句话说,我希望能够做例如var html_string = get_header_wrapper(),其中html_string 包含上述所有 HTML。
我能想到的一件事是复制该函数并使其返回一个字符串。但是,这样会非常低效,因为它会引入大量重复代码。
<?php
function get_header_wrapper() {
var ret = <<<EOD
<div id="header">
<div class="page-width">
<!-- And a lot more HTML after this line. -->
...
EOD;
return ret;
}
?>
【问题讨论】:
-
第二个代码块有什么问题? (除了 EOD 之外,不应在前面添加任何空格。
-
为什么不能修改已有的功能?
-
@Truth:第二个代码块可以正常工作。但是,我一直在寻找一种解决方案,我不必将那段 HTML 代码复制到不同的函数中。抱歉,我不清楚我没有权限直接修改
get_header()。谢谢。