下面这段 PHP 代码:
$count = 1;
while ($count < 30)
{
print_r($count++ . "\r\n");
ob_flush();
flush();
usleep(200 * 1000);
}
运行结果如下:

每次都会输出前面打印的和后面生成的。
然后,这边我需要ajax发送请求,实时反馈数据:
function test(){
G.ajax({
url: 'prac.php' ,
method: 'post' ,
isAsync: true ,
progress: function(){
console.log('下载文件数据中:' , this.responseText);
} ,
load: function(){
console.log('载入完成');
}
});
}
test();
结果是这样的:

而 js progress 事件中,我不需要获取所有的数据,我只要每次 php sleep 输出的那一个值。
实现下面这种效果:

PHP 怎么实现后面的输出覆盖掉源输出实现上面的效果??
该博客探讨了如何修改PHP代码,使用Ajax实时发送请求并仅接收每次`sleep`期间产生的输出,以实现新的效果,即后续输出覆盖原始输出。作者介绍了实现这一目标的具体方法和技巧。

481

被折叠的 条评论
为什么被折叠?



