可能重复:
什么是输出缓冲?
我有一些内容需要一段时间才能由 PHP 生成。同时,我想使用这个简单的 JS 技巧来显示“正在加载...”消息。一旦生成输出,该消息就会消失。
<p id="loading_msg">Loading...</p>
<h1>Hello</h1>
<?php
sleep(2); // This is the greedy function call
print '<p>This content definitely took a while to be generated !.</p>';
?>
<script type="text/javascript">
var e = document.getElementById("loading_msg");
e.style.display = "none";
</script>
问题是,sleep(2);
它不会发送所有内容直到阻塞,而是在生成所有页面之前等待,然后一次性发送所有内容。它显然破坏了我的“正在加载...”消息的目的,因为它在 2 秒过去之前没有出现。关于为什么以及如何解决这个问题的任何想法?