通常的情况下用PHP输出内容会先缓存, 到最后全部输出. 如果有一个多步的耗时操作, 所有的结果都要等到页面执行完后才能看到. 中间漫长的过程只有等待. 能不能立即都看到每步的结果呢?
如何让PHP即时输出内容呢. 可以用以下方法设定缓存的输出:
ob_start();
//do something to generate $content
echo $content;
ob_end_flush();
flush(); //if script is ending, this can be removed.
这里ob_start()就是指定缓存的开始. ob_end_flush()就是结束. 而flash()就是显示出来.
注意:
1. 有些Win32下的web服务器程序,在发送结果到浏览器之前,仍然会缓存脚本的输出,直到程序结束为止。
2.某些浏览器必须在接收到256个字符后才会显示内容。