忍者ブログ
バナヤンの忍者風呂
忍者ブログのカスタマイズ、各種WEBツールのテストなど試行錯誤の日々。 VMLによる地図の作成を研究していましたが、一時中断して、今はPHPを勉強しているところです。
ニュース
この欄には、このブログの内容に関連するニュースを掲載する予定です。
お知らせ
この欄には管理人からのお知らせなどを掲載します。
[46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56]

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

PHP テキストファイルの書き込み(追加)

PHPで会員登録システムを作りたい。そのために必要な知識をひとつひとつ確認していこうと思っています。今回のテーマは、「テキストファイルの書き込み(追加)」です。

新しいユーザーが登録してくれたら、その情報を記録しなければなりません。情報セキュリティの問題は、横に置き、ユーザー情報をテキストファイルで保持している場合を想定します。その場合、テキストファイルに新しいユーザーの情報を追加する必要があります。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
QRコード
忍者ブログ [PR]
Copyright (C) 2006 banayan ALL RIGHTS RESERVED.