PHP 文件创建/写入
在本章中,我们将教您如何在服务器上创建文件并向其中写入内容。
PHP 创建文件 - fopen()
fopen()
函数也用于创建文件。也许有点令人困惑,但在 PHP 中,创建文件使用的是与打开文件相同的函数。
如果您在一个不存在的文件上使用 fopen()
,它将创建该文件,前提是该文件是以写入 (w) 或追加 (a) 模式打开的。
下面的示例创建了一个名为 "testfile.txt" 的新文件。该文件将在 PHP 代码所在的同一目录中创建。
示例
$myfile = fopen("testfile.txt", "w")
PHP 文件权限
如果您在尝试运行此代码时遇到错误,请检查您是否已授予 PHP 文件向硬盘写入信息的权限。
PHP 写入文件 - fwrite()
fwrite()
函数用于向文件写入内容。
fwrite()
的第一个参数包含要写入的文件的名称,第二个参数是要写入的字符串。
下面的示例将几个名字写入一个名为 "newfile.txt" 的新文件中。
示例
<?php
$myfile = fopen("newfile.txt", "w") or die("无法打开文件!");
$txt = "John Doe\n";
fwrite($myfile, $txt);
$txt = "Jane Doe\n";
fwrite($myfile, $txt);
fclose($myfile);
?>
请注意,我们向 "newfile.txt" 文件写入了两次。每次写入文件时,我们都发送了字符串 $txt,它第一次包含 "John Doe",第二次包含 "Jane Doe"。写入完成后,我们使用 fclose()
函数关闭了文件。
如果我们打开 "newfile.txt" 文件,它将如下所示:
John Doe
Jane Doe
PHP 覆盖
现在 "newfile.txt" 包含了一些数据,我们可以展示当以写入模式打开一个现有文件时会发生什么。所有现有数据都将被擦除,我们从一个空文件开始。
在下面的示例中,我们打开现有的文件 "newfile.txt",并向其中写入一些新数据:
示例
<?php
$myfile = fopen("newfile.txt", "w") or die("无法打开文件!");
$txt = "Mickey Mouse\n";
fwrite($myfile, $txt);
$txt = "Minnie Mouse\n";
fwrite($myfile, $txt);
fclose($myfile);
?>
如果我们现在打开 "newfile.txt" 文件,John 和 Jane 都消失了,只有我们刚刚写入的数据存在:
Mickey Mouse
Minnie Mouse
PHP 追加文本
您可以使用 "a" 模式向文件追加数据。"a" 模式将文本追加到文件末尾,而 "w" 模式会覆盖(并擦除)文件的旧内容。
在下面的示例中,我们打开我们现有的文件 "newfile.txt",并向其追加一些文本:
示例
<?php
$myfile = fopen("newfile.txt", "a") or die("无法打开文件!");
$txt = "Donald Duck\n";
fwrite($myfile, $txt);
$txt = "Goofy Goof\n";
fwrite($myfile, $txt);
fclose($myfile);
?>
如果我们现在打开 "newfile.txt" 文件,我们会看到 Donald Duck 和 Goofy Goof 被追加到了文件末尾:
Mickey Mouse
Minnie Mouse
Donald Duck
Goofy Goof
完整的 PHP 文件系统参考
有关文件系统函数的完整参考,请访问我们的完整 PHP 文件系统参考。