.这个是从文本文件中读入每行内容,并显示在html中,我想实时显示,但这个似乎是等所有的循环执行完成了以后才显示的;求解,有没有什么办法让它循环一次显示一次;
$shili = fopen ("test.txt","r") ;  //打开文本
while ( !feof ( $shili ))//判断是否到了文件最后的函数
{
$shi = fgets ( $shili,1024 ) ;        //读取其中的数据
$xx="!#$^";
//$headret = PostData($shi);
$headret="234234";
$bodaytext=$xx.$headret;
if(strpos($bodaytext,'密码错误') > 0)      //判断返回值是不是空的,是空的就是没有'-'
{
echo $shi.":密码不正确"."</br>";
continue;
}
else
{
echo $shi.":密码正确。跳出循环"."</br>";
//break;
}
}
fclose ( $shili ) ; 

解决方案 »

  1.   

        While(true){
            $N=Count(File($file));
            IF($N!=$total){
                $total = $N;
                $HTM=File($file);
                Echo '<div>',Htmlspecialchars(End($HTM)),'</div>';
                ob_flush();
                flush();
            }Else{
                usleep(1500);
            }
        }
      

  2.   

    http://hi.baidu.com/see7di/item/761f8adca700a73e49e1dde5
      

  3.   

    php是服务端,全执行完了,才会一次性推给客户端。如果你想实现一个一个的显示,需要使用缓冲,但好像服务器还要配置什么东西配合的。
      

  4.   

    服务器要关闭gzip,将buffer设置小一些。
    浏览器也有buffer,这个没法关,所以每次服务器端输出时,填充一些空白字节进来。都做到就可以实现实时输出了
      

  5.   

    echo str_pad(" ", 256);  
    $shili = fopen ("test.txt","r") ;  //打开文本
    while ( !feof ( $shili ))//判断是否到了文件最后的函数
    {
    $shi = fgets ( $shili,5) ;        //读取其中的数据
    $str_output ="密码不正确"."</br>";
    echo $shi.$str_output;
    ob_flush();  
    flush();
    sleep(1);
    }
      

  6.   


    echo str_pad(" ", 256);  
    $shili = fopen ("test.txt","r") ;  //打开文本
    while ( !feof ( $shili ))//判断是否到了文件最后的函数
    {
    $shi = fgets ( $shili,5) ;        //读取其中的数据
    $str_output ="密码不正确"."</br>";
    echo $shi.$str_output;
    ob_flush();  
    flush();
    sleep(1);
            }
    这个读文本内容并实时显示的是可以的,但为什么显示内容后面总是多显示一个“密码不正确”
    zzwc密码不正确
    密码不正确
    zzwc密码不正确
    密码不正确
    如果不连接字符串则无问题,这个是什么原因的
      

  7.   

    我用的是wamp 服务器,这些没设置似乎可以输出;
      

  8.   

    $shi = fgets ( $shili,5) ;
    这个 5 太小了
    你示例的数据是 zzwc 在文件中还有回车换行
    而 5 正好读到 zzwc\r 还剩 \n 没有读
    下一次读到 \n 就结束了(这是 fgets 的约定)
    由于没有读到数据,自然也就只输出“密码不正确”了
      

  9.   

    tks.开始测试时说弄短点,后面忘改了;。。