PHP的file_put_contents()函数默认情况下会直接覆盖文件原有内容,但可以通过参数控制写入方式:
默认行为(覆盖)
如果不加任何特殊参数,函数会清空文件原有内容,写入新内容:
file_put_contents("test.txt", "新内容"); // 原内容被完全替换追加模式(不覆盖)
使用FILE_APPEND参数可以保留原内容,在文件末尾追加新内容:
file_put_contents("test.txt", "\n追加内容", FILE_APPEND);典型场景对比
日志记录:应该用
FILE_APPEND配置文件更新:通常需要覆盖写入
临时文件:根据需求选择模式
注意事项
如果文件不存在会自动创建
追加时建议添加换行符(
\n)避免内容粘连高并发场景建议配合
LOCK_EX使用
就像写字板:
覆盖模式 = 拿新纸重写
追加模式 = 在原来纸上继续写