<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()を介してファイルを開いた後にファイルポインターリソースが返されました。
$文字列:何を書くか。
$ length (オプション):記述する最大バイト数を指定し、省略した場合、すべてのコンテンツがデフォルトで記述されます。
関数は、記述されたバイト数を返し、障害がある場合にfalseを返します。
「append」書き込みを実装するには、鍵はfopen()関数のオープニングモードにあります。
「W」 :書き込みモード。これにより、元のファイルコンテンツがクリアされます。
「A」 :追加モード、ファイルポインターがファイルの最後を指し、元のコンテンツは上書きされません。
「A+」 :読み取りモードを追加し、同時読み書きを許可し、書き込み時に最後に追加します。
したがって、ファイルの元のコンテンツを保持し、最後に書き続ける必要がある場合は、 「a」または「a+」モードを選択する必要があります。
fopen()を使用して、付録モードでファイルを開きます。
fwrite()を使用してコンテンツを書き込みます。
fclose()を使用してファイルを閉じてリソースをリリースします。
次の例は、ファイル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では、 FWRITE()関数と組み合わせたFOPEN()の「a」または「a+」モードを使用して、ファイルコンテンツのアプリ内容操作を簡単に実現できます。この方法は、元のコンテンツを保持するだけでなく、ログ、データの蓄積、その他のシナリオに非常に適したファイルを柔軟に拡張することもできます。
<span></span>