<?php
ob_start();
ob_end_clean();
ob_implicit_flush(true);
ob_end_flush();
for($i=1;true;$i++){
echo $i.'<br/>';
ob_flush();
flush();
sleep(1);
}
?>环境:rhel5.5+apache+php5.3.2+firefox3.6
ob_start();
ob_end_clean();
ob_implicit_flush(true);
ob_end_flush();
for($i=1;true;$i++){
echo $i.'<br/>';
ob_flush();
flush();
sleep(1);
}
?>环境:rhel5.5+apache+php5.3.2+firefox3.6
<?php
ob_start();
for($i=1;true;$i++){
ob_flush();
echo $i.'<br/>';
flush();
sleep(1);
}
<?php
ob_start();
for($i=1;$i<=5;$i++){
ob_flush();
echo $i.'<br/>';
flush();
sleep(1);
}
改成这样,可以看到,明显是一次性输出所有内容,而不是每一秒钟输出一部分内容。
echo str_repeat(' ',256);
加了这个也没用,而且我加的是4096。<?php
ob_start();
for($i=1;$i<=5;$i++){
ob_flush();
echo str_repeat(' ',4096);
echo $i.'<br/>';
flush();
sleep(1);
}
?>另外还请大家看明白了,cache内容长度的要求是IE的特点,firefox并无这样的要求。不论怎么说,我加了4096了,还不够?
你的环境是什么,我确定你给的代码在我的环境中是不行的:环境:rhel5.5+apache+php5.3.2+firefox3.6。