許多網站的統計代碼採用 JavaScript 呼叫 PHP 的方式輸出,這樣可讓靜態 HTML 頁面也能顯示動態資料。本文以簡單的網頁計數器為例,示範完整實作流程。
PHP 腳本輸出 document.write() JavaScript 代碼,HTML 頁面透過 <script src="counter.php"></script> 引入,瀏覽器執行 JS 即可顯示計數結果。
<?php
$countfile = "num.txt";
// 嘗試以讀寫模式開啟檔案
if (($fp = fopen($countfile, "r+")) == false) {
printf("開啟檔案 %s 失敗!", $countfile);
exit;
} else {
// 讀取目前計數(最多 10 位數)
$count = fread($fp, 10);
$count = $count + 1; // 計數遞增
fclose($fp);
// 以覆寫模式開啟並寫入新計數
$fp = fopen($countfile, "w+");
fwrite($fp, $count);
fclose($fp);
// 關鍵:輸出 JavaScript 代碼而非純文字
echo 'document.write("'.$count.'")';
}
?>
FileCount.phpnum.txt(初始內容可為 0)num.txt 有讀寫權限<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>網頁計數器示範</title>
</head>
<body>
<h1>歡迎光臨</h1>
<p>您是第
<script src="FileCount.php"></script>
位訪客</p>
</body>
</html>
注意:此為教學示範用簡易實作,生產環境請加入完善的錯誤處理、鎖機制(防止並發寫入衝突)與快取策略。