喵喵笨兔 の 喵喵的家~遊戲天地 - 首頁(上版面)
喵喵笨兔 の 喵喵的家~遊戲天地 - 首頁(左版面)
首  頁 最新消息 遊戲攻略 遊戲影片 遊戲圖片 下載區 學習分享 留言板 FB粉絲團
 喵喵笨兔 の 喵喵的家~遊戲天地 - PHP 自行製作瀏覽人數計數器 ^ ^

PHP - 自行製作瀏覽人數計數器 ^ ^

PHP - 計數器的寫法

使用開啟檔案 fopen()、寫入檔案 fwrite() 這二個函數,即可輕鬆寫出計數器了。笨兔的小站右上角計數器就是如此產生的!^ ^

 

先說明一下這二個函數的基本用法:

fopen(file,mode)

 file:開啟的檔案或URL,必須為 PHP 可開啟的權限與內容。

 mode:開啟模式。常用模式表如下:

模式 說明
r 開啟檔案,以供讀取,從檔案開頭開始
r+ 開啟檔案,以供讀取及寫入,從檔案開頭開始
w 開啟檔案,並寫入(覆寫)
w+ 開啟檔案,以供讀取及寫入(覆寫)
x 開啟檔案並寫入,假如檔案已存在,不會開啟開檔,fopen()會回傳false
x+ 開啟檔案,供讀取及寫入,假如檔案已存在,不會開啟開檔,fopen()會回傳false
a 開啟檔案,以供新增內容,接續在目前已有的內容之後開始寫入,假如檔案不存在,會建立一個新檔
a+ 開啟檔案,以供新增及讀取內容,接續在目前已有的內容之後開始寫入,假如檔案不存在,會建立一個新檔
c 以寫入模式打開文件,指針指向文件開頭,如果文件不存在,fopen 嘗試創建
c+ 以讀寫模式打開文件,指針指向文件開頭,如果文件不存在,fopen 嘗試創建

 

fwrite(file,string,length)

 file:要寫入打開的文件。

 string:要寫入的字串。

 length:要寫入的最大字節數。(此可省略不設)

 

計數器寫法,須先建立一個文字檔放在同目錄下 (或放那裡皆可,,要打開該檔時的路徑對即可),並在裡面輸入您要起始的數字。

範例:笨兔以在同目錄下建立一個 html_016.txt,並在裡面輸入起始數字1後存檔為例。您可直接複製所有程式碼,另存成一個 php 檔來觀看唄 ^^ (當然須再自創一個內容為1的html_016.txt檔,若要數字圖版,則須自創0~9圖檔唄!)

<?php
session_start(); //用session來控制,避免瀏覽人數透過重新整理加以灌水 //計數器
$countfile=fopen("html_016.txt","r"); //用fopen以唯讀(r)方式打開 html_016.txt
$countnum=fgets($countfile); //用fgets讀取裡面的資料
fclose($countfile); //關閉html_016.txt
if($_SESSION['countuser']!='Y'){ //若第一次進入
$countnum++; //讀取出的數字+1
$countfile=fopen("html_016.txt","w"); //用fopen以寫入(w)方式打開 html_016.txt
fwrite($countfile,$countnum); //用fwrite將剛+1後的數字寫入 html_016.txt
fclose($countfile); //關閉counter.txt
$_SESSION['countuser']='Y'; //用session標記瀏覽者,這樣沒關閉瀏覽器的情況下,他下次進來的時候計數器就不會增加 } ?> <!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>喵喵笨兔 の 喵喵的家~遊戲天地 - PHP 自行製作瀏覽人數計數器 ^ ^</title>
</head>
<body> <p>瀏覽人數(純數字版):<?php echo $countnum; ?></p>
<p>瀏覽人數(數字圖版):
<?php
//若要以數字圖來顯示,須做 0~9 的數字圖,下例笨兔以做成 0.gif ~ 9.gif 放在 gif 目錄內為例,寫法如下:
$numlen = strlen($countnum); //計算訪客數是幾位數
for($i=0;$i<$numlen;$i++){ //有幾位數就跑幾次迴圈
$imgnum = substr($countnum, $i ,1); //訪客數字串從左邊第幾個字取一個字(左至右是以0開始算)
echo "<img src=gif/".$imgnum.".gif width=23 height=40 />"; //顯示與取出數字相同的數字圖,寛width和height再依自己做的圖來設定
}
?>
</p>
</body> </html>

範例結果:(下次您重啟再進來就不是現在看到的數字了^^)

瀏覽人數(純數字版):135

瀏覽人數(數字圖版):

笨兔隨手筆記於 2017/10/02

喵喵笨兔 の 喵喵的家~遊戲天地
http://vv0817.tk
http://vvv.lionfree.net
http://qo3op.asuscomm.com/vvv
https://uoedgpkhyfwzmd7zua8myg-on.drv.tw/vvv