- ベストアンサー
少人数(約20人)のプロフィールをどう管理するか…
はじめまして、よろしくお願いします。 PHPにて少人数(約20人)のプロフィールを 公開するウェブサイトを制作しようと思っています。 それぞれのプロフィールは個人が編集できるようにしたいのですが、 そのプロフィールの管理(保管)方法について悩んでいます。 それほど情報量も多くないのでDBを利用するのは避けようかな と思っているのですが… 何かいい方法はございませんか…?? どうかいいアイデアをご教授ください よろしくお願いします。 ※プロフィールの項目は約10程度を想定しています。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
やはり各人が自分のファイルのみ更新するという前提ですが、バイナリで保存するのも良いかもしれません。 ・1人分の情報を1ファイル ・情報は連想配列 ・serialize/unserializeしたものを直接ファイルに読み書き たとえば、各人のプロフィールをこんな感じの配列にします。 $profile = array("属性1" => "...", "属性2" => "...", ....); これをファイルに保存するときは、 file_put_contents("それぞれのID.dat", seriarize($profile)); 読むときには $profile = unserialize(file_get_contents("それぞれのID.dat")); のようにします。 テキストファイルで保存するのに比べると、PHPを使わないと保存ファイルの内容を確認できないのが欠点ですが、データを読むのも書くのも1行で済んでしまいますから、簡単なプログラムに使うには便利だと思います。
その他の回答 (3)
- Quux
- ベストアンサー率57% (16/28)
各人が自分のプロファイルしか編集しないという前提に立てば、 私ならテキストファイルにします。 プロファイル用のディレクトリを用意して、ファイル名にはユーザーIDか番号を振り、1ユーザー1ファイル。中身は ---- 項目名: 値 項目名: 値 項目名: 値 ---- のように。
お礼
ご回答本当にありがとうございます。 経験者様のご意見をいただいて、 テキストファイルでの管理方法を しっかり詰めていきたいと思います
- ranuwe
- ベストアンサー率33% (7/21)
普通にCSVやXML等のTEXTファイルとかで出来ますが、DBより却って面倒な事もあります。 更新頻度は低そうですが、ファイルは適切にロックしないと破損する可能性があり またディレクトリトラバーサルあたりはきちんと理解して作る必要があります。
お礼
早々のご回答ありがとうございます。 …ですね。 却ってトラブルを招く危険性がありますよね…
- asuncion
- ベストアンサー率33% (2127/6289)
各人が編集するのであれば、データベースを使うのが無難だと思います。 仮にテキストファイルか何かを使うとすると、 書き込み時の排他制御(ロック、アンロック)をちゃんと行なえば 大丈夫なのかもしれませんが、やったことがないのでよくわかりません。
お礼
早々のご回答ありがとうございます。 やはりDBを利用する方がいいですか…
お礼
ご回答本当にありがとうございます。 実に現実味を帯びた内容で参考にさせていただきます。 自身、テキストファイルでの管理方法に自信がありませんでしたので これを機によく勉強したいと思います。 ありがとうございました。