方法:1、用“file_put_contents(文件名,'数据',FILE_APPEND)”;2、用“fwrite(fopen(文件名,'a'),'数据')”,fopen()可以追加模式打开文件,fwrite()可在打开的文件中写入数据。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
php怎么实现文件写入不覆盖
在php中,想要实现文件写入不覆盖,可以通过在文件末尾追加数据来实现。
PHP支持两种在文件末尾追加数据的方法:
立即学习“PHP免费学习笔记(深入)”;
使用file_put_contents()函数
使用fopen()和fwrite()函数
有一个名为“test.txt”的文本文件,里面的内容为:

来看看怎么向文件写入数据(不覆盖):
方法1:利用file_put_contents()函数追加数据
file_put_contents()函数可以将一个字符串写入到文件中,语法格式如下:
file_put_contents(string $filename, mixed $data[, int $flags = 0[, resource $context]])
参数说明如下:
| 运算符组合使用):将file_put_contents()函数的第三个参数设置为“FILE_APPEND”可追加数据而不是覆盖。
示例:
<?php
header("Content-Type: text/html;charset=utf-8"); //设置字符编码
$file = "test.txt";
file_put_contents($file, '欢迎来到PHP中文网!33',FILE_APPEND); //写入内容
readfile($file); //读取并输出文件全部内容
?>
方法2:利用fopen()和fwrite()函数追加数据
<?php
header("Content-Type: text/html;charset=utf-8"); //设置字符编码
$file = "test.txt";
$handle = fopen($file, 'a'); //以追加写入的模式打开文件
fwrite($handle, 'https://www.php.cn/'); //写入内容
fclose($handle);//关闭文件
readfile($file); //读取并输出文件全部内容
?>
关键代码分析:
fopen($filename, $mode)函数可以按照指定文件模式$mode打开一个文件。当$mode为a或者a+,设置在打开文件时,将文件指针指向文件末尾;这样进行写入操作时,数据会被追加到已有数据的后面。
fwrite()函数可以将一个字符串写入到打开的文件中,因此fwrite($handle, 'https://www.php.cn/')语句的作用就是:将字符串“https://www.php.cn/”写入到已经打开的“test.txt”中。
写入完成后,使用fclose()函数来关闭文件。如果想要获取“test.txt”文件中的新内容,就使用readfile($file)函数直接获取。
推荐学习:《PHP视频教程》
以上就是php怎么实现文件写入不覆盖的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号