如何捕获函数生成的HTML?

Jus*_*Kaz 2 html php

我有一个PHP函数,生成如下所示的HTML代码

function j_uf_SomeFunction($some_var) {
    ?><div class="db_photo">
        <img alt="<?php echo some_php_function ?>" src="<?php echo $some_var; ?>" />
    </div><?php
}
Run Code Online (Sandbox Code Playgroud)

当然,它更先进,并添加各种用户选项.

在大多数情况下,我将此函数内联,而不是必须将其附加到字符串.但是,我第一次出现(可能不是最后一次),我需要将呈现的HTML存储在一个字符串中,而不是将它直接发送到解析器来构建页面.

我需要关闭该功能并告诉它采取生成的html并将其存储在一个字符串中,而不是仅在某些情况下将其发送到页面.

Sen*_*kin 5

function j_uf_SomeFunction($some_var) {
    ob_start();
    ?><div class="db_photo">
        <img alt="<?php echo some_php_function ?>" src="<?php echo $some_var; ?>" />
    </div><?php
  return ob_get_clean();//suggestion by GWW
}
Run Code Online (Sandbox Code Playgroud)

ob_start()是启动缓冲区接收ob_get_clean()清除当前缓冲区并返回其值.

有关http://php.net/manual/en/function.ob-start.php的更多信息

ob*输出缓冲