SEEK_SET和0两个参数,就是将字符串从开头写,自然将原来的t覆盖掉了,所以就一个用SEEK_END,看意思也就明白从结尾开始了,这就能达到你的要求了,刷几次,就几个

解决方案 »

  1.   

    那它为什么会覆盖掉原来的t?
    在123.txt文件当中本来有一行字符串"aaaa",那它要覆盖的话就会变成"taaa",可是我发现它变成了"taaaa",这是为什么?
      

  2.   

    不知道你用的环境,我这里PHP Version 5.2.4,的确是变成了'taaa';
      

  3.   

    我用的是PHP Version 5.2.5,我发现把fseek($fp,0,SEEK_SET)改成fseek($fp,-1,SEEK_SET)就可以变成"taaa",这是为什么?
      

  4.   

    $filename   =   "d:\\123.txt";
    $fp   =   fopen($filename,"r+");
    fseek($fp,0,SEEK_SET);//指针始终定位在第一个,不管刷多少次
    fputs($fp,"t");//在开头增加字符串,但是会替换掉开头相应长度的字符,所以每次刷都会用t来替换t
    fclose($fp);