在PHP中的变量中存储回显的字符串

时间:2009-07-28 17:40:17

标签: php variables echo

如何获取函数回显变量的字符串?

我的功能与此类似:

    function echoer() {
        echo 'foo';
    }

我无法改变它的来源。我想要做的是将'foo'存储在一个变量中,而不是让它转到标准输出。它是如何在PHP中完成的?

2 个答案:

答案 0 :(得分:17)

ob_start()将启动一个输出缓冲区,该缓冲区将禁止所有内容。然后,在完成所有输出后,调用ob_get_contents()并将其分配给变量。最后调用ob_end_clean()以便再次正常回显。

ob_start()

echo "This content won't be echoed immediatley";

$contents = ob_get_contents();

ob_end_clean();

echo $contents;

正如Milen所提到的,请查看Output Control functions.

此方法非常有用,尤其适用于使用Wordpress,后者设置为输出大多数内容,如注释,并且不提供返回功能。

答案 1 :(得分:6)