PHPのfwrite()関数を使用しファイルを書き込む

スポンサーリンク

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」という名前で保存し、実行させてみます。

実行させてみると、「ファイルへのデータ書き込みが成功しました」と出力されました。

出力された後に、空だったテキストファイルを確認すると、データ(日本語の文字列)が書き込まれていることが確認できました。

コメント

タイトルとURLをコピーしました