PHP中写入文件不覆盖可以实现内容追加的效果。下面是具体的攻略步骤和示例说明:
步骤:
- 定义文件路径和写入内容
- 使用
fopen()
函数打开文件,将文件设置为追加模式 - 使用
fwrite()
函数写入文件 - 使用
fclose()
函数关闭文件句柄
示例1
在本例中,我们将向一个名为“example.txt”的文件添加内容。下面是完整文件:
<?php
$filename = "example.txt";
$filecontent = "Hello World!\n";
$file = fopen($filename, "a");
fwrite($file, $filecontent);
fclose($file);
?>
代码分析:
- 第1行:定义文件名为
example.txt
的文件。 - 第2行:定义需要写入的内容,这里是
Hello World!
,后面加上换行符\n
,表示一个新行。 - 第4行:使用
$file
变量调用fopen()
函数来打开example.txt
文件,并将其设置为追加模式,使用a
作为第2个参数。 - 第5行:使用
$file
变量调用fwrite()
函数,将刚才定义的$filecontent
内容写入到example.txt
文件中。 - 第6行:使用
$file
变量调用fclose()
函数来关闭文件句柄。
运行此代码后,执行该代码的PHP脚本将会向example.txt文件追加一个新行的“Hello World!”字符串,如果改变 $filecontent
的内容,就可以向example.txt文件中添加任何文本。
示例2
我们可以通过文件上传表单来添加内容。下面是示例代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>写入文件示例</title>
</head>
<body>
<form method="post" action="writefile.php">
<input type="text" name="content">
<button type="submit">保存</button>
</form>
</body>
</html>
<?php
if(isset($_POST['content']) && !empty($_POST['content'])){
$file = fopen("example.txt", "a");
fwrite($file, $_POST['content'] . "\n");
fclose($file);
echo "写入成功!";
}else{
echo "请输入有效的文本!";
}
?>
代码分析:
- 表单中,我们创建了一个文本输入框和一个提交按钮,用户可以输入写入文件的文本内容,提交完成后 PHP 脚本将它保存到
example.txt
文件中。 - PHP 脚本首先检查是否提交了文本内容,如果有,就打开
example.txt
模式为“追加”状态,使用fwrite()
函数保存提交内容。 - 如果没有提交有效内容,则会输出提示信息。
运行此代码后,用户可以通过表单输入内容,然后点击“保存”按钮将文本追加到example.txt。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php写入文件不覆盖的实例讲解 - Python技术站