为什么我的 PHP 输出缓冲不起作用

Why does my PHP output buffering not work

以前从未使用过输出缓冲,但阅读它似乎很简单。所以这就是我为测试所做的:

<?php ob_start(); ?>

<p>Welcome to my homepage</p>

问题是脚本实际上正在将段落打印到我的浏览器上,即使我还没有刷新。

这不是应该使用输出缓冲的方式吗??

这是标准行为。 PHP 将作为脚本关闭的一部分刷新所有打开的输出缓冲区。这意味着您不必调用 ob_flush() 或 end/clean 调用。它会在脚本执行结束时自动发生。

只有在构建 "large" 页面并且不希望它耗尽脚本的内存限制时,或者您已经超过了在您的代码中指向您需要执行任何预输出操作的位置,例如 header() 调用。