この章では、サーバ上のでファイルを作成して、書き出す方法を説明します。
fopen() 関数は、ファイルの作成にも使用します。たぶん少し混乱するかもしれませんが、PHPでは、 ファイルをオープンするために使用した関数と同じ関数を使用してもファイルが作成されます。
存在しないファイルに対してfopen()を使用すると、書き出し(w)または追加(a)モードでファイルをオープンするため、ファイルが作成されます。
下の例は、"testfile.txt" という名前の新しいファイルを作成します。このファイルは、PHPコードが置かれているのと同じディレクトリに作成されます:
$myfile = fopen("testfile.txt", "w")
このコードを実行しようとしたときに、エラーが発生した場合は、あなたのPHPファイルがハードドライブにアクセスして、情報を書き込むことが 許可されているかどうかを確認してください。
fwrite() 関数は、ファイルへの書き出しに使用します。
fwrite()の最初のパラメータは、書き出すファイル名で、2番目のパラメータは書き出す文字列です。
下の例では、新しいファイル "newfile.txt" に2組の名前を書き出します:
<?php
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
$txt = "John Doe\n";
fwrite($myfile, $txt);
$txt = "Jane Doe\n";
fwrite($myfile, $txt);
fclose($myfile);
?>
ファイル "newfile.txt" に2度書いたことに注目してください。ファイルを書き出すたびに、最初は"John Doe"、2番目は"Jane Doe" を含んだ文字列 $txtを設定しています。書出しの終了後は、fclose()関数を使ってファイルを閉じます。
"newfile.txt" ファイルを開くと、次のようになります:
John Doe
Jane Doe
"newfile.txt"には、既存のファイルを書き込み用に開いたときに何が起こるかを表すデータが含まれています。 既存のデータはすべて消去され、空のファイルから始まります。
下の例では、既存のファイル "newfile.txt" をオープンし、新しいデータを書き込みます:
<?php
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
$txt = "Mickey Mouse\n";
fwrite($myfile, $txt);
$txt = "Minnie Mouse\n";
fwrite($myfile, $txt);
fclose($myfile);
?>
"newfile.txt"ファイルを開くと、JohnとJaneの両方が消えて、今書き込んだデータだけが存在しています:
Mickey Mouse
Minnie Mouse
ファイルシステム関数の完全なリファレンスは、完全な PHP ファイルシステムリファレンスをご覧ください。