file_put_contents関数で追加した文字列が消えてしまう

スポンサーリンク

file_put_contents関数は、ファイルに文字列を書き込む関数ですが、3番目のパラメータに指定する動作設定を省略すると、上書きモードでデータが書き込まれます。つまり、ゲストブックなどでこの関数を使う場合は、最後の行に続けて書く「追記」はうまくいかず、前に書きこんだデータは上書きされて消えてしまいます。

データを最後の行に続けて追記するには、3番目のパラメータにFILE_APPENDを指定します。また、書き込む文字列を指定する2番目のパラメータに、改行定数PHP_EOLを追加しておくと便利です。テキストファイルn

<?php
file_put_contents("test.txt", "文字列" . PHP_EOL, FILE_APPEND);
?>

PHPの基礎が身に付いたかチェックするなら

PHP「直す力」養成ドリル
スポンサーリンク