アクセスカウンタ
例
PHP で簡単なアクセスカウンタを作ってみましょう。
あなたは 183732 人目のお客様です。
作り方
こういった表示をするには,該当箇所に次のように打ち込みます。
<?php $f = fopen("count.txt", "r+"); $c = fgets($f, 10); $c = $c + 1; fseek($f, 0); fputs($f, $c); fclose($f); ?> <p>あなたは <?php echo $c; ?> 人目のお客様です。</p>
そして,0
とだけ書き込んだファイル count.txt
を作って,サーバに送り,「読む」「書く」のパーミッションをすべてオン(666)にしておきます。
仕組み
fopen("count.txt", "r+")
は,ファイル count.txt
を開く命令です(fopen = file open)。r+
は開き方のフラグで,r
なら読む(read),w
なら書く(write),r+
なら読むけれど書くこともできる開き方です。fopen()
はファイルのハンドル(把っ手)を返しますので,それを変数 $f
に代入します。
fgets()
は開いたファイルの把っ手を指定して文字列を読み込みます(fgets = file get string)。2番目の引数 10 は,最大10文字読むということです。アクセス数ですからこれで十分でしょう。
$c = $c + 1;
は,読んだアクセス数に 1 を加えます。
fseek($f, 0)
はファイルを位置 0 つまりファイルの先頭まで巻き戻します(fseek = file seek)。
fputs()
はファイルに書き込みます(fputs = file put string)。
最後に fclose()
でファイルを閉じます(fclose = file close)。