代码改变世界

PHP强制输出的应用

2012-03-21 10:46  少毅  阅读(594)  评论(0编辑  收藏  举报

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);//模拟耗时
}