ob_start()似乎没有停止任何输出所以当我刷新缓冲区时它会加倍
<?php
ob_start();
echo "Text..... <br />";
echo ob_get_flush();
?>
输出
Text.....
Text.....
但我期待
Text.....
有什么想法吗?
由于
答案 0 :(得分:12)
删除最后一行的回音。
ob_get_flush()
隐式打印存储的输出并返回它,因此您将其打印两次。
您可能将ob_get_flush()
与ob_get_clean()
答案 1 :(得分:1)
尝试:
<?php
ob_start();
echo "Text..... <br />";
ob_get_flush();
?>
来自http://php.net/manual/en/function.ob-get-flush.php
刷新输出缓冲区,将其作为字符串返回并关闭输出缓冲
刷新输出意味着:它将输出发送到浏览器或命令行。
返回字符串意味着:它返回字符串,因此您可以将刷新的字符串存储在变量中。因为你echo
这个字符串,你第二次得到输出。