如何在没有覆盖的情况下在php中编写文件

时间:2014-05-11 13:52:46

标签: php

我的代码产生了一些问题。该文件的先前内容已经过时了

       <?php
       $g=fopen("lop.txt","r");
       $m=fgets($g);
       echo $m;
       fclose($g);
       $j="tendoeschate";
       $b=fopen("lop.txt","w");
       $p=fwrite($b,$j);
       $t=fgets($b);
       echo $t;
       ?>

在此我的上一篇内容在我追加新内容时会被淹没请帮助

3 个答案:

答案 0 :(得分:1)

将fwrite替换为:

file_put_contents("lop.txt", $j, FILE_APPEND);

答案 1 :(得分:0)

您应该使用正确的模式打开文件。只需查看http://au2.php.net/manual/en/function.fopen.php

即可

您应该使用模式将内容附加到文件末尾

,而不是w模式

答案 2 :(得分:0)

您始终可以获取旧文件的内容,然后将该字符串与新内容字符串组合,然后编写完整的行。

$existingData = file_get_contents($file);
$newData = "Blablabla";
$totalData = $existingData.'. '.$newData;

fwrite($file, $totalData);

您还可以转动$totalData,以便在旧数据前面写入较新的数据。尽管如此,使用FILE_APPEND更有效率。