如何获取函数回显变量的字符串?
我的功能与此类似:
function echoer() {
echo 'foo';
}
我无法改变它的来源。我想要做的是将'foo'存储在一个变量中,而不是让它转到标准输出。它是如何在PHP中完成的?
答案 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)