俺也很想知道PHP 没有 fflush() 函数,好象只能每次 open, write, close如果只是想在进程间共享数据,用共享内存更好

解决方案 »

  1.   

    用$num=fwrite($fd,$content,strlen($content));
    替换一下fwrite($fd,$content,strlen($content));
    然后echo $num;如果是和strlen($content)一样,那么执行写入成功。如果得到了-1说明函数执行有问题,如果是0,那么你的$content本身附值有问题。另$fd = fopen("/home/webdev/tmp/K1","w+");用w+方式打开文件-----以读和写的方式打开,把文件指针移动到文件的开头,并且把文件的长度变成0,如果不存在这个文件那么创建一个------这是我对以w+方式打开的理解浅妄薄见,望与斟酌
      

  2.   

    $content本身肯定没有问题,因为每次刷新叶面,echo "before"的东西都会变化,就是在"after"那里无法得到任何内容。
      

  3.   

    to alexxing(赤铸) :
    PHP有 fflush()这个函数的
    int fflush ( int fp)  //成功返回TRUE,失败返回FALSE
    它是强制的把缓冲地输出写入到一个可用地文件指针打开的文件中
    to  icewolf_li(冰狼) :
    我所能想到地:
    1:把fwrite函数改成fputs函数试一下----因为我学C的时候好像记得fputs会留东西在缓存里
    2:把fflush(fp)函数加到fputs函数后面试试
    我没有试过,不知道行不行浅妄薄见,妄与斟酌
      

  4.   

    原来用fflush就可以了。
    结贴。
      

  5.   

    挖塞,长见识,俺的PHP手册里没有fflush(),俺一直以为没有呢