PHP 写入文件

2025 年 4 月 9 日 | 阅读 4 分钟

在 PHP 中,`fwrite()` 和 `fputs()` 函数用于将数据写入文件。要将数据写入文件,您需要使用 `w`、`r+`、`w+`、`x`、`x+`、`c` 或 `c+` 模式。

PHP 提供了许多内置函数,可用于执行不同的文件操作。它们可用于创建、打开、读取、写入以及执行其他文件活动。

PHP 中写入文件的函数

PHP 默认提供的函数列在下面

首先,我们使用 `fopen()` 创建一个文件

在写入文件之前,我们必须了解如何创建文件。为此,使用 `open()` 方法。与 Linux 中的 `vi` 函数类似,PHP 使用相同的函数来创建和打开文件,尽管名称具有误导性。运行此函数时,它首先确定文件是否已存在,然后再创建它。下一个示例说明了这一点

代码

示例

立即执行

输出

PHP Write File

fwrite()

在创建文件后,我们使用此方法将必要的内容写入文件。仅当它到达文件末尾 (EOF) 或我们根据优先级顺序提供的长度时,此函数才会终止。

语法

`length` 是一个可选参数,用于指定要写入的最大字节数;`file` 是一个必需的字段,用于定义我们要写入的文件;`string` 是另一个必需的参数,指示要写入打开文件的字符串。

代码

示例

立即执行

输出

文件:sample.txt

This is the text written in the file using the PHP fwrite() function!!

file_put_contents()

这是一个额外的 PHP 函数,可用于将内容写入文件。访问文件时必须遵守许多准则,它们按相同顺序排列

  • `FILE_USE_INCLUDE_PATH` 是一个属性,当设置时,它决定路径是否包含文件名副本。
  • 在创建文件之前检查它是否已存在。
  • 然后打开文件。
  • 如果设置了 `LOCK_EX` 属性,则文件将被锁定。
  • 将 `FILE_APPEND` 属性设置为将文件指针移动到文件末尾;否则,文件内容将被清空。
  • 现在它将必要的信息添加到文件中。
  • 如果存在任何锁,则关闭文件并释放它。

注意:在向文件末尾追加数据时,应使用 `FILE_APPEND` 属性,以防止数据被完全擦除。

语法

  • `filename` 是一个必需的输入,用于提供我们要写入的文件的完整路径;因此,此方法会验证并生成一个文件。
  • `text` 是另一个必需的字段,包含我们必须输入到文件中的信息。它可以是数据流、字符串数组或基本字符串的形式。
  • `mode` 是一个可选字段,允许我们以不同方式处理文件。它可以具有以下值
    • `FILE_USE_INCLUDE_PATH`: 查找包含目录路径中的给定文件名。
    • `FILE_APPEND`: 它将数据追加到文件,而不是覆盖它。
    • `LOCK_EX`: 写入时,它会显式锁定文件。
  • `context` 是一个可选参数,提供文件的上下文。本质上,它是一组可以改变流行为的设置。
  • 返回值: 如果此函数成功,它将返回写入文件的总字节数;如果失败,则返回 `FALSE`。

代码

示例

立即执行

输出

文件:sample.txt

Testing for file write using the file_put_contents function in PHP

覆盖

我们可以替换上面提到的文件中已写入的数据。文件将从头开始创建,删除任何现有数据并从头开始。在接下来的示例中,我们将打开一个现有文件并尝试向其中添加新数据。

代码

示例

立即执行

输出

文件:sample.txt

Overwriting the previous data

PHP 代码 说明了文件覆盖的执行。它以写入模式(“w”)打开名为“sample.txt”的文件,并将第一个文本字符串“Initial Data in the File”追加到文件开头。为了确保数据保留,它然后关闭文件。脚本在以写入模式重新打开文件时会自然清除文件中的旧数据。

然后,上述字符串基本上被更新的字符串“Overwriting the previous data”替换。这清楚地表明,以写入模式打开文件会在写入新内容之前覆盖数据