欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

实现echo 可以边执行边输出

程序员文章站 2022-06-11 08:21:54
...
$result = mysql_query("SELECT * FROM `AA` ");

while($row = mysql_fetch_array($result))
{
$dj=$row["DJ"];
echo $dj;
}


$result = mysql_query("SELECT * FROM `BB` ");

while($row = mysql_fetch_array($result))
{
$dj=$row["DJ"];
echo $dj;
}



租用的阿里服务器,原来可以实现第一个select输出完 再执行第二个select,升级完服务器后,现在是所有select 都执行完统一查询,这样感觉有点假死状态,请问怎么实现原来的边执行边输出啊 我现在用的是PHP5.2 是不是跟版本有问题


回复讨论(解决方案)

现在这个论坛没有人气了吗

可能是你之前的配置问题吧!
一般的配置都是要等页面整个运行完再进行输出的,没执行完的输出,保存在缓冲区中。
如果你想不等执行完就看到输出可以先取出缓冲区中的内容。
ob_flush;flush();

ob_flush();flush();

有种迂回的方法,写一个文件 1 2 3 4 5 然后前端AJAX 去请求读这个文件 实时输出状态.

至少你贴出的代码是不会有你描述的效果的(任何场合下都不会,除非你隐瞒了什么)

强制推出服务端缓冲(ob_flush、flush)只对部分服务器有效,并且与浏览器有关

?制?出???就可以。
ob_flush();
flush();
?考: http://blog.csdn.net/fdipzone/article/details/10367837

隔几秒执行程序,然后再缓冲输出,前提把你服务器的超时时间设置高些