方法很簡單,把下面的代碼添加到你需要顯示的地方即可。
<?php //首先你要有讀寫文件的權限,首次訪問肯不顯示,正常情況刷新即可 $online_log = "maplers.dat"; //保存人數的文件到根目錄, $timeout = 30;//30秒內沒動作者,認為掉線 $entries = file($online_log); $temp = array(); for ($i=0;$i<count($entries);$i++){ $entry = explode(",",trim($entries[$i])); if(($entry[0] != getenv('REMOTE_ADDR')) && ($entry[1] > time())) { array_push($temp,$entry[0].",".$entry[1]."\n"); //取出其他瀏覽者的信息,并去掉超時者,保存進$temp }} array_push($temp,getenv('REMOTE_ADDR').",".(time() + ($timeout))."\n"); //更新瀏覽者的時間 $maplers = count($temp); //計算在線人數 $entries = implode("",$temp); //寫入文件 $fp = fopen($online_log,"w"); flock($fp,LOCK_EX); //flock() 不能在NFS以及其他的一些網絡文件系統中正常工作 fputs($fp,$entries); flock($fp,LOCK_UN); fclose($fp); echo "在線人數:".$maplers."人"; ?>
轉載請注明出處 AE博客|墨淵 ? Emlog統計正在訪問博客的在線人數代碼
發表評論