最新記事
(06/29)
(06/04)
(06/03)
(05/30)
(05/28)
|
ニュース
この欄には、このブログの内容に関連するニュースを掲載する予定です。
|
PHP テキストファイルの書き込み(追加)
PHPで会員登録システムを作りたい。そのために必要な知識をひとつひとつ確認していこうと思っています。今回のテーマは、「テキストファイルの書き込み(追加)」です。
新しいユーザーが登録してくれたら、その情報を記録しなければなりません。情報セキュリティの問題は、横に置き、ユーザー情報をテキストファイルで保持している場合を想定します。その場合、テキストファイルに新しいユーザーの情報を追加する必要があります。PHPでは、テキストファイルへの追加書き込みをどのように記述すればいいのでしょう。
「abcd,efghijk,lmn@opq.com,1」というデータをテキストファイルmember.txtに追加したいと思います。どのようにすればいいのでしょう。なお、このデータは「ユーザーid,パスワード,メールアドレス,クラス」というユーザー情報を想定しています。
[ソース]テキストファイルへの追加のサンプル
変数$dataは、実際には、この処理の前で動的に生成されますが、ここでは単純化のため、既定値としています。なお、末尾の「\r\n」はWindowsの改行コードです。UNIX系は「\n」、Macは「\r」が改行コードです。
fopenは、ファイルを開く関数です。
パラメータとして、開くファイルのパスとモードを指定します。
読込みで開く時は"r"、書き込みの時は"w"、追加は"a"です。
それぞれ"read","write","apend"の先頭の1文字を取っていると思います。
fopenは、ファイルのハンドル値を返します。
ただし、慣例としてファイルポインタを示す$fpという変数で受けることが多いようです。
ファイルポインタは、ファイルの中でどの位置で読み書きするかを示すものです。通常、ファイルをオープンしたときはファイルの先頭にありますが、追加モード"a"で開いた時は、ファイルの末尾になります。
fputsはファイルの書き込みを行う関数です。
パラメータとして、ファイルのハンドル値と書き込むべき文字列を指定します。fwriteの別名だそうです。
fputsは、書き込んだバイト数を返します。エラー時はFALSEを返します。
上記の例では、「fputs($fp,$data); 」の記述で"member.txt"に"abcd,efghijk,lmn@opq.com,1\r\n";が書き込まれます。
fopenで開いたファイルは、fcloseで閉じる決まりになっています。
ハンドル値を指定して閉じます。
新しいユーザーが登録してくれたら、その情報を記録しなければなりません。情報セキュリティの問題は、横に置き、ユーザー情報をテキストファイルで保持している場合を想定します。その場合、テキストファイルに新しいユーザーの情報を追加する必要があります。PHPでは、テキストファイルへの追加書き込みをどのように記述すればいいのでしょう。
「abcd,efghijk,lmn@opq.com,1」というデータをテキストファイルmember.txtに追加したいと思います。どのようにすればいいのでしょう。なお、このデータは「ユーザーid,パスワード,メールアドレス,クラス」というユーザー情報を想定しています。
[ソース]テキストファイルへの追加のサンプル
<?php
$data = "abcd,efghijk,lmn@opq.com,1\r\n";
$fp=fopen("member.txt","a");
fputs($fp,$data);
fclose($fp);
?>
変数$dataは、実際には、この処理の前で動的に生成されますが、ここでは単純化のため、既定値としています。なお、末尾の「\r\n」はWindowsの改行コードです。UNIX系は「\n」、Macは「\r」が改行コードです。
fopenは、ファイルを開く関数です。
パラメータとして、開くファイルのパスとモードを指定します。
読込みで開く時は"r"、書き込みの時は"w"、追加は"a"です。
それぞれ"read","write","apend"の先頭の1文字を取っていると思います。
fopenは、ファイルのハンドル値を返します。
ただし、慣例としてファイルポインタを示す$fpという変数で受けることが多いようです。
ファイルポインタは、ファイルの中でどの位置で読み書きするかを示すものです。通常、ファイルをオープンしたときはファイルの先頭にありますが、追加モード"a"で開いた時は、ファイルの末尾になります。
fputsはファイルの書き込みを行う関数です。
パラメータとして、ファイルのハンドル値と書き込むべき文字列を指定します。fwriteの別名だそうです。
fputsは、書き込んだバイト数を返します。エラー時はFALSEを返します。
上記の例では、「fputs($fp,$data); 」の記述で"member.txt"に"abcd,efghijk,lmn@opq.com,1\r\n";が書き込まれます。
fopenで開いたファイルは、fcloseで閉じる決まりになっています。
ハンドル値を指定して閉じます。
PR