php写入文件不覆盖的实例讲解

一. 简介

在 PHP 中,想要向文件中写入内容,我们可以利用 file_put_contents 函数。而在写入时,如果文件中已有内容,则默认是会覆盖原有内容的。本文将讲解如何在写入文件时不覆盖原有内容。

二. file_put_contents 函数

PHP 中,file_put_contents 函数可以用于向文件中写入内容。它有一些常规参数,比如要写入的文件名、写入的数据等。

下面给出 file_put_contents 函数的基本语法:

```

file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] ) : int

```

其中,filename 是要写入的文件名;data 是要写入的数据。

对于第三个参数 flags,默认值为 0,代表使用常规写入模式,即会覆盖原有内容。如果想要在写入时不覆盖原有内容,可以设置 flags 参数。

三. 写入文件不覆盖的实例

我们以一个示例代码来说明如何在写入文件时不覆盖原有内容。

```

$filename = 'test.txt';

$content = "Hello, world!";

file_put_contents($filename, $content);

```

上面的代码将字符串 "Hello, world!" 写入一个名为 test.txt 的文件中。如果文件中已有内容,则会被覆盖。

要实现不覆盖原有内容,可以写入时先打开文件,再把新的内容加到文件中。下面是实现方式:

```

$filename = 'test.txt';

$content = "Hello, world!";

$file_handle = fopen($filename, 'a');

fwrite($file_handle, $content);

fclose($file_handle);

```

其中,'a' 参数代表以追加方式打开文件。这样,在写入新内容时,不会覆盖原有的内容,而是将新的内容加到文件末尾。

四. 总结

在 PHP 中,如果要向文件中写入内容,可以使用 file_put_contents 函数。但是,如果文件中已有内容,则默认会被覆盖。如果想要在写入时不覆盖原有内容,可以使用追加方式打开文件,然后将新的内容加到文件末尾。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

后端开发标签