PHP如何实现内容实时输出?

PHP 在控制台的实时更新输出内容是用的哪个方法?
比如我要输出1000行:"inserting row X"
控制台显示只有X在变

阅读 6k
6 个回答
<?php
for($n = 1; $n < 100; $n++) {
    echo chr(3); // 输出文本结束控制字符,这样可以清除之前输出的文本内容
    echo chr(8); // 将前一个控制字符删掉,避免在控制台留下控制字符的标记
    echo "inserting row $n\r";
    sleep(1); // 延时一秒是为了看清楚文字变化
}

echo "inserting row X\r";

新手上路,请多包涵

问题有点不对吧 cli模式下的输出就是实时的

刷新缓冲区ob_flush

cli本来就是交互式命令行啊

很遗憾system,exec执行cls没有效果,那么你就只能这样做了。


function cls($size) 
{ 
    for ($i = 0; $i < $size; $i++) { 
        echo("\n"); 
    } 
} 

for ($i=0; $i < 1000; $i++) { 
   
    cls(100);
    echo "inserting row {$i}";
    sleep(1);
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题