0

我有一个 PHP 函数,它通过 echo 打印出 HTML,也可以在标签之外打印它(参见下面的示例)。我想做的(出于 MVC 目的)是能够拦截这两种方法生成的输出流,以便我可以将其传递给显示格式化函数。

我曾尝试使用 ob_start() 等,但这只会拦截回显数据。

例子:

<?php
function doLogicStuff()
{
  echo "This is some text.";  //You can intercept this using ob_start()
  ?>
    <b>This is some more HTML stuff</b>  <!-- This will not be intercepted by ob_start() -->
  <?php
}
?>

我希望能够截取该函数输出的完整“最终结果”,以便我可以将其传递给一个负责以统一方式显示其的函数。

有没有办法做到这一点,或者将所有内容写入字符串变量并返回它是最简单的(这当然可以解决问题,但对于大块 HTML 来说这样做很烦人)。

谢谢!

4

0 回答 0