ob_end_clean()不按预期工作

时间:2014-02-02 14:04:33

标签: php buffer

从PHP手册:

ob_end_clean — Clean (erase) the output buffer and **turn off** output buffering.

第二部分是什么不起作用。 如果我写:

echo "a";
ob_end_clean();
echo "b";

它应该什么都不写。问题是它打印“b”。这个功能应该像我想的那样工作? 如果是,服务器是否可能禁用关闭缓冲区的可能性?

1 个答案:

答案 0 :(得分:1)

你误解了这个功能。

ob_start();
echo 'a';
ob_end_clean();
echo 'b';

输出b。

a在缓冲区中,因此当您删除它时将无法显示。

ob_end_clean擦除输出缓冲区并将其关闭。它不会阻止脚本继续。你可以添加退出;在ob_end_clean之后,它不会输出b。