很多时候我会花费大量时间来回复状态更新的PHP脚本,例如“批处理1完成”,“批处理2完成”等。
我注意到有时服务器以“实时”方式响应,您可以在浏览器上打印出“作业”完成后看到这些状态更新。
但在其他时候你必须等待脚本结束,浏览器会立即显示所有状态更新。
第一次发生的时间是什么时候?是浏览器吗?是PHP设置吗?脚本编码的方式?
答案 0 :(得分:1)
您可以使用ob_flush将当前输出发送到浏览器。
或者该进程可以作为后台进程运行,并通过快速进程进行通信,如编写数据库记录,并通过AJAX请求进行更新。
如果您有特定用例,请告诉我们它是什么,也许有人可以建议什么是最适合您的方法。 (主要取决于您运行的服务器类型;例如,共享主机通常不会运行后台进程)。