PHP file_put_contents() 函数用法及示例

PHP Filesystem 参考手册

file_put_contents()函数可以将字符串写入文件。

语法

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

该函数访问文件时,遵循以下规则:

  1. 如果设置了 FILE_USE_INCLUDE_PATH,那么将检查 *filename* 副本的内置路径

  2. 如果文件不存在,将创建一个文件

  3. 打开文件

  4. 如果设置了 LOCK_EX,那么将锁定文件

  5. 如果设置了 FILE_APPEND,那么将移至文件末尾。否则,将会清除文件的内容

  6. 向文件中写入数据

  7. 关闭文件并对所有文件解锁

如果成功,该函数可以返回写入文件的字符数。如果失败,则可以返回false。

参数

参数描述
file必需。指定要写入数据的文件。如果文件不存在,则创建一个新文件。
data必需。指定要写入文件的数据。可以是字符串、数组或数据流。
mode可选。指定如何打开/写入文件。可能的值:
  • FILE_USE_INCLUDE_PATH

  • FILE_APPEND

  • LOCK_EX

context可选。指定文件句柄的环境。context 是一套可以修改流的行为的选项。

示例1

向文件 sample.txt 写入内容

<?php
   echo file_put_contents("sample.txt" ,"Hello World!");
?>

输出结果

11

示例2

使用 FILE_APPEND方式追加内容, 避免删除文件中已存在的内容。

<?php
   $file = "sample.txt";
   //要添加到文件中的新用户
   $test = " nhooo";
   //使用FILE_APPEND标志将内容追加到文件的末尾
   //以及LOCK_EX标志,以防止任何其他人同时写入该文件
   file_put_contents($file, $test, FILE_APPEND | LOCK_EX);
   echo "内容已成功追加写入到文件中。";
?>

输出结果

内容已成功追加写入到文件中。

PHP Filesystem 参考手册