<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 示例程序:演示fwrite函数实现文件内容追加</span></span><span>
</span><span><span class="hljs-variable">$filename</span></span><span> = </span><span><span class="hljs-string">"example.txt"</span></span><span>;
</span><span><span class="hljs-variable">$content</span></span><span> = </span><span><span class="hljs-string">"这是新追加的一行内容。"</span></span><span> . PHP_EOL;
</span><span><span class="hljs-comment">// 使用a模式(追加模式)打开文件</span></span><span>
</span><span><span class="hljs-variable">$file</span></span><span> = </span><span><span class="hljs-title function_ invoke__">fopen</span></span><span>(</span><span><span class="hljs-variable">$filename</span></span><span>, </span><span><span class="hljs-string">"a"</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$file</span></span><span>) {
</span><span><span class="hljs-title function_ invoke__">fwrite</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>, </span><span><span class="hljs-variable">$content</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">fclose</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"内容已成功追加到文件中!"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"无法打开文件!"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
------------------------------------------------------------
</span><span><span class="hljs-comment"># PHP中如何使用fwrite函数实现文件内容追加?操作方法及代码示例</span></span><span>
在日常的PHP开发中,经常会遇到需要向文件中写入数据的场景。如果希望不覆盖原有的文件内容,而是将新内容追加到文件末尾,可以使用`</span><span><span class="hljs-title function_ invoke__">fwrite</span></span><span>()`函数配合追加模式来实现。
</span><span><span class="hljs-comment">## 一、fwrite函数简介</span></span><span>
`</span><span><span class="hljs-title function_ invoke__">fwrite</span></span><span>()`是PHP内置的文件操作函数,用于向已打开的文件写入内容。其基本语法为:
```php
</span><span><span class="hljs-title function_ invoke__">fwrite</span></span><span>(resource </span><span><span class="hljs-variable">$handle</span></span><span>, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$string</span></span><span>, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$length</span></span><span> = ?): </span><span><span class="hljs-keyword">int</span></span><span>
</span></span>
:通过fopen()打开文件后返回的文件指针资源。
$string:要写入的内容。
$length(可选):指定写入的最大字节数,如果省略则默认写入全部内容。
函数返回写入的字节数,失败时返回false。
实现“追加”写入,关键在于fopen()函数的打开模式:
"w":写入模式,会清空原文件内容。
"a":追加模式,文件指针指向文件末尾,不会覆盖原内容。
"a+":追加读写模式,允许同时读写,写入时同样追加到末尾。
因此,如果需要保留文件原有内容并在末尾继续写入,应选择"a"或"a+"模式。
下面的示例演示如何将文本追加到文件example.txt中:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$filename</span></span><span> = </span><span><span class="hljs-string">"example.txt"</span></span><span>;
</span><span><span class="hljs-variable">$content</span></span><span> = </span><span><span class="hljs-string">"这是新追加的一行内容。"</span></span><span> . PHP_EOL;
</span><span><span class="hljs-comment">// 以追加模式打开文件</span></span><span>
</span><span><span class="hljs-variable">$file</span></span><span> = </span><span><span class="hljs-title function_ invoke__">fopen</span></span><span>(</span><span><span class="hljs-variable">$filename</span></span><span>, </span><span><span class="hljs-string">"a"</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$file</span></span><span>) {
</span><span><span class="hljs-title function_ invoke__">fwrite</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>, </span><span><span class="hljs-variable">$content</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">fclose</span></span><span>(</span><span><span class="hljs-variable">$file</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"内容已成功追加到文件中!"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"无法打开文件!"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
执行后,如果example.txt原本已有内容,新内容会被添加到文件末尾,不会覆盖之前的内容。
文件权限:确保文件具有写入权限,否则可能写入失败。
换行处理:如需多行追加,可使用PHP_EOL来自动添加换行符。
文件关闭:操作完成后务必调用fclose()释放资源,避免文件句柄占用。
在PHP中,通过fopen()的"a"或"a+"模式结合fwrite()函数,即可轻松实现文件内容的追加操作。这种方法既能保留原有内容,又能灵活扩展文件,非常适合日志记录、数据积累等场景。
<span></span>