我在PHP页面上进行了大量处理,我希望向用户显示进度信息,例如,完成10%20%等等。现在发生的事情是在处理完成后立即显示所有数据,我该如何立即显示它!
我尝试在php.ini
中设置注释输出缓冲区,我尝试在flush()
语句之后使用echo
,不工作,有任何建议吗?
这是我的代码:
ob_start();
while ($line = read_file_line("c:/1.txt")) {
$read_lines_count++;
if($read_lines_count % 100 == 0) {
echo "parsed $read_lines_count <br />";
ob_flush();
}
}
答案 0 :(得分:3)
首先,您需要在打印任何代码之前致电ob_start()
。
然后回复你想要的任何东西
如果要在屏幕上显示缓冲区,请调用ob_flush()
。
最后,调用ob_end_flush()
来结束缓冲并显示输出。
确保您的php.ini有一行取消注释:
output_buffering = On