PHP在执行一些耗时的循环任务时,例如循环发送邮件这样的任务时,浏览器会一直呈现白页状态,用户体验非常不好,因此可以考虑在每循环一次的时候给浏览器输出点信息,这时候就需要用到PHP的强制输出函数flush了,具体代码记录如下:
set_time_limit(0); //防止执行超时
ob_end_clean(); //清空并关闭输出缓冲区
echo str_repeat(" ",1000); //某些浏览器要达到足够的长度才输出,所以填充空格
for($i=0;$i<100;$i++){
echo $i.'<br/>';
flush(); //强制输出
sleep(1);//模拟耗时
}