▼【考え方】ログの書き込みですが、一般に掲示板などでは
▼【考え方】ログの書き込みですが、一般に掲示板などでは
・先頭から書き込んで、先頭から表示
・最後に書き込んで、後ろから表示
の2つの方法があると思いますが、今回は前者の方法で行います。
ファイルの先頭に最新データを書き込み、現データを一定件数(100件)を越えないように書き込みます。
$lines = file(“log.log"); //いままでのログを配列に読み込む
$fp = fopen(“log.log","w"); //ログをオープン(空になる)
fputs($fp,$dat); //データを書き込む(先頭に)
for($i = 0; $i < 99; $i++) //いままでの分を追記 fputs($fp, $lines[$i]); //(配列0-98→現ログ1-99行目)
fclose ($fp);
となります。 ログを100件にまとめるには現ログの99件を書き直せばいいです。
さて表示と書き込みをまとめてみましょう。書き込み処理は表示より前に持ってきた方がいいですね。同じ名前(ログファイル名)や後から変更する数値(表示行数)は変数か定数として、先頭に移動させましょう。