早期網站常見的計數器多以圖片方式呈現,但隨著技術演進,純文字計數器因輕量、易整合、可自訂樣式而受青睞。本文整理自早期 PHP 社群分享的「最省空間計數器」概念,提供兩種實作範例:一種輸出 JavaScript 供前端直接嵌入,另一種直接輸出純文字供後端或模板引擎使用。
計數器的核心在於向遠端計數服務(此處為 `https://www.jx.zj.cninfo.net/cgi-bin/count.cgi?df=wfnic.dat`)發送請求,取得純文字格式的計數值,再依需求決定輸出格式。此做法無需資料庫、無需寫入本地檔案,極適合靜態頁面或無資料庫環境的專案。
此版本輸出一段 `document.write` 程式碼,瀏覽器執行後會直接在頁面寫入加粗的計數數字。適用於傳統 HTML 頁面、SSI 無法使用的環境,或需跨域嵌入計數器的場景。
<?php
// count.php - JS 應用版
$a = file("https://www.jx.zj.cninfo.net/cgi-bin/count.cgi?df=wfnic.dat");
// 輸出 JS 程式碼,瀏覽器會執行 document.write 寫入 <b>計數</b>
print "document.write('<b>$a[0]</b>');";
?>
前端引用方式:
<script src="count.php"></script>
此版本直接輸出純文字數字,適合在 PHP 模板中直接 `include`,或搭配 `file_get_contents`、`curl` 由後端抓取後再行處理(如格式化、加上千分位符號等)。
<?php
// count.php - PHP 直接版
$a = file("https://www.jx.zj.cninfo.net/cgi-bin/count.cgi?df=wfnic.dat");
// 直接輸出純文字計數值
print $a[0];
?>
後端整合範例:
<?php
$count = file_get_contents('count.php');
echo "目前訪客數:" . number_format((int)$count);
?>
雖然現代網站多改用 Google Analytics、Matomo 等完整分析工具,但簡易計數器在特定情境(如靜態部落格、舊系統維護、極簡頁面)仍具備「零依賴、即插即用」的優勢。理解其運作原理,也有助於掌握 PHP 遠端請求與輸出控制的基礎觀念。