当我在while循环中处理大型记录并且循环的每次迭代输出屏幕的一些信息时,我总是发现自己在看旧屏幕。我看到的只是活动图标旋转 - 这表示服务器正在处理一些数据。
我没有遇到超时问题因为我已经在脚本顶部找到了set_time_limit (3600);
。这只是让我担心的无聊屏幕。
在ASP(我来自哪里),我去了response.flush,它解决了这个问题。 顺便说一句,在ASP中,我总是使用response.buffer = true打开缓冲。在PHP中,这是一个备受争议的领域,我仍然没有清楚地了解是否应该打开或关闭ob。
在这里,我没有打开ob_start
缓冲,问题是为什么不将echo推送到浏览器?
如果服务器处理信息中的while循环,浏览器会逐步获取html块,你会怎么做?
答案 0 :(得分:0)
禁用输出缓冲,减少php.ini中的缓冲区大小,使用隐式刷新或使用flush()
显式刷新。但是如果你必须显示大量数据,那么在处理过多时间时分页你的内容或使用命令行脚本可能更好。