今日紹介するのは PHP で作るシンプルな[アクセス・カウンター]です。
インターネットが普及し始めた2000年代に随分と流行した記憶がありますが、当時は CGI を使って動かすのが一般的だったと思います。
その後アクセスカウンターの存在意義が疑問視され、今ではすっかり廃れてしまった技術。ですが、細々と需要はあるものです。
仕組みとしては、アクセス数を保存しておくテキストファイル[count.txt]を用意しておき、任意のページにアクセスがある度に PHP のプログラムにより[count.txt]内の数値をカウントアップしていくことになります。
まずは準備として、テキストファイル[count.txt]を作成し、ファイルには数字の「1」を書き込んでおきましょう。
このファイルをサーバーにアップロードして、パーミッションを「606」に設定しておきます。
続いて html 側にて、アクセス数を表示させたい任意の場所に以下のコードを記述します。
<?php $counter_file = 'count.txt'; $counter_lenght = 8; $fp = fopen($counter_file, 'r+'); if ($fp) { if (flock($fp, LOCK_EX)) { $counter = fgets($fp, $counter_lenght); $counter++; rewind($fp); if (fwrite($fp, $counter) === FALSE) { echo ('<p>'.'ファイル書き込みに失敗しました'.'</p>'); } flock ($fp, LOCK_UN); } } fclose ($fp); echo '<p>'; echo ('あなたは <em>'.$counter.'</em> 人目の訪問者です。'); echo '</p>'; ?>
この際、PHP を動かすファイルの拡張子は必ず「.php」でなければならないのでご注意を。
サンプルは以下になります。
[PHP]で作るアクセス・カウンター:サンプル・デモ