场景:
1)一些耗时的处理操作需要在界面上浏览器上显示执行结果;
2)一些后台服务,需要在浏览器上监控运行结果;
直接上代码:
<?php
function createWorker($func){
set_time_limit(0);
ob_end_clean();
ob_implicit_flush();//缓冲区实时输出
header('X-Accel-Buffering: no'); // 关键是加了这一行
$func();
}
//思路一
createWorker(function(){
system("ping 127.0.0.1 -t");
});
/*思路二 :
createWorker(function(){
exec("/home/web/a.sh >> /home/web/a.log 2>&1 &");
while(1){
$log = file_get_contents('/home/web/a.log');
echo "最新一行";
}
});
*/