PHPのfwrite()関数を使用しファイルを書き込んでみます。
fwrite()関数は、データをファイルに書き込んだり、既存のファイルに追加することができます。
データを書き込む際は、書き込まなければならない長さを、fwrite()関数のパラメーター,引数として渡し、成功した場合は書き込まれたバイト数を返し、失敗した場合は偽(False)を返します。
なお、fwrite()関数は、ファイルの終わり(ファイルの終わりという印まで)か、または指定された長さに達することができる、いずれか早い方で停止できます。
■基本的な構文
fwrite(file, string, length)
fileは、データを書き込む先のファイル(開いている状態)を指定します。必須です。
stringは、開いているファイルに書き込む文字列の指定します。必須です。
lengthは、データを書き込む際の最大バイト数を指定します。オプションです。
■環境
・Windows10
・WampServer Version 3.2.3 64bit
・PHP Version 7.3.21
■fwrite()関数を使用しファイルを書き込む
では、早速fwrite()関数を使用しファイルを書き込んでみます。
■コード
<html lang="ja">
<head>
<title>fwrite()関数を使用しファイルを書き込む</title>
</head>
<body>
<?php
$file = "C:/wamp64/www/project/test.txt";
$data = "今日はいい天気ですね";
$handle = fopen($file, "w") or die("エラー:ファイルを開くことができません。");
fwrite($handle, $data) or die("エラー:ファイルの書き込みができません。");
fclose($handle);
echo"ファイルへのデータ書き込みが成功しました";
?>
</body>
</html>
今回はfileという変数を宣言し、その中でtest.txtというファイルを指定し格納します。
次にdataという変数を宣言し、その中にファイルへのデータを書き込みますので、データとして、今回は日本語の文字列を格納します。
格納後、handleという変数を宣言し、その中でfopen()関数を使用し、file変数内のファイルを開きます。開く際は、”w(ファイルへの書き込み)”モードでファイルを開き、ファイルを開いた際にdie()関数でエラーが発生した場合の処理を指定します。指定後、格納。
次にfwrite()関数を使用し、ファイルを開き”w(ファイルへの書き込み)”モード状態のhandle変数を指定し、data変数内のデータを書き込みます。データを書き込む際にdie()関数でエラーが発生した場合の処理を指定します。指定後、格納。
データを書き込んだ後に、fclose()関数で、file変数内のファイルを閉じます。
最後に、echo文を使用し、ファイルへのデータ書き込みが成功したことを出力します。
なお、test.txtというファイルの中身を開きデータを書き込みますが、今回はあらかじめ空のテキストファイルを用意しています。
今回はファイルを用意しましたが、ファイルが既に存在する・用意されている場合、PHPは新しいデータを書き込む前に、ファイルの内容を消去します。一方、存在しない・用意されていない場合、PHPは自動的にファイルを作成し、データを書き込みますので、ご注意ください。
■実行
では、このスクリプトを「write_to_file.php」という名前で保存し、実行させてみます。
実行させてみると、「ファイルへのデータ書き込みが成功しました」と出力されました。
出力された後に、空だったテキストファイルを確認すると、データ(日本語の文字列)が書き込まれていることが確認できました。
コメント