[PHP-users 2245] テキストファイルで掲示板

ebi php-users@php.gr.jp
Wed, 26 Sep 2001 12:16:40 +0900


はじめまして本日からこのメーリングリストに
参加させていただきました。
PHP1年生のebiです。

現在私はPerlを利用して掲示板を作成しています。
データはテキストファイルにタブ区切りで保存するように
なっております。
現在Perlでやっている事をPHPでも行いたいのですが
どのようにして良いのか分かりません。
PostgreSQLをつかったサイトの構築といった内容の書籍や
サイトはたくさん見つけたのですが
私の場合、PHPの利用目的がカウンターや小規模の複数掲示板なので
わざわざPostgreSQLにアクセスするよりもテキストファイルの方が
負荷がかからなくてすむと思ったからです。

テキストファイルに追加する内容は
名前、メール、コメントの3種類で先頭に1から順にキーIDが
自動追加されます。データは1行1レコードで
最大30件登録されます。
上記内容をPerlで作成すると下記内容になります。

もしよろしければこれをPHPで記述した場合
どのようになるか教えていただけないでしょうか?
よろしくお願い致します。

Perlの場合のソース

($name に名前 $mail にメール $com にコメントが入っています。)
open DATS, "+<./bbs.dat";
#ファイルロック
flock(DATS,2);
#頭に追加する為、全部読み込みSeek
@dats = <DATS>;
seek(DATS,0,0);
#先頭のキーIDの数値を1足す
$keyid = ((split/\t/,$dats[0])[0]) + 1;
#改行を<BR>に変換
$com =~s/\r\n/<BR>/g;
$com =~s/\n/<BR>/g;
#新規投稿を追加
print DATS "$keyid\t$name\t$mail\t$com\t-\n";
#最大30件なので29件書き込む(データが無い場合はぬける)
for($i=0;$i<=28;$i++){
  last unless $dats[$i];
  print DATS $dats[$i];
}
truncate(DATS,tell(DATS));
close(DATS);