国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php使用Session和文件統計在線人數

2024-05-04 23:37:16
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了php使用Session和文件統計在線人數,本文直接給出實例代碼,需要的朋友可以參考下

  1. <?php  
  2. /*  
  3. @ PHP 在線人數統計程序  
  4. Copyright (c) by Pader 1:25 2009年1月7日  
  5. How to use it: <script src="online.php"></script>  
  6. note: 一般獨立在線人數統計程序都是統計在線的IP數,而這并不準確  
  7. 例如局域網的訪問者,比如公司,學校機房和網吧,雖然內網IP不同,但是外網IP都是一樣  
  8. 如果同一個局域網的無論多少人人訪問你的網站則只被認為是一個人  
  9. 這個小巧的程序解決了此問題,它以電腦為單為,每臺電腦便算一個訪問者  
  10. 當然因為使用的是COOKIE,如果你在同一臺電腦上使用兩種不同核心的瀏覽器訪問那就別當別論了  
  11. */ 
  12. $filename = 'online.txt'//數據文件,如果沒有新建  
  13. $cookiename = 'VGOTCN_OnLineCount'//cookie名稱  
  14. $onlinetime = 600; //在線有效時間,單位:秒 (即600等于10分鐘)  
  15.  
  16. @$online = file($filename); //數據文件,如果沒有新建  
  17. $nowtime = time();  
  18. $nowonline = array();  
  19.  
  20. /*  
  21. @ 得到仍然有效的數據  
  22. */ 
  23. if(!emptyempty($online)){  
  24. foreach($online as $line) {  
  25. $row = explode('|',$line);  
  26. $sesstime = trim($row[1]);  
  27. if(($nowtime - $sesstime) <= $onlinetime) { //如果仍在有效時間內,則數據繼續保存,否則被放棄不再統計  
  28. $nowonline[$row[0]] = $sesstime//獲取在線列表到數組,會話ID為鍵名,最后通信時間為鍵值  
  29. }  
  30. }  
  31. }  
  32. /*  
  33. @ 創建訪問者通信狀態  
  34. 使用cookie通信  
  35. COOKIE 將在關閉瀏覽器時失效,但如果不關閉瀏覽器,此 COOKIE 將一直有效,直到程序設置的在線時間超時  
  36. */ 
  37. if(isset($_COOKIE[$cookiename])) { //如果有COOKIE即并非初次訪問則不添加人數并更新通信時間  
  38. $uid = $_COOKIE[$cookiename];  
  39. else { //如果沒有COOKIE即是初次訪問  
  40. $vid = 0; //初始化訪問者ID  
  41. do { //給用戶一個新ID  
  42. $vid++;  
  43. $uid = 'U'.$vid;  
  44. while (array_key_exists($uid,$nowonline));  
  45. setcookie($cookiename,$uid);  
  46. }  
  47. $nowonline[$uid] = $nowtime//更新現在的時間狀態  
  48.  
  49. /*  
  50. @ 統計現在在線人數  
  51. */ 
  52. $total_online = count($nowonline);  
  53.  
  54. /*  
  55. @ 寫入數據  
  56. */ 
  57. if($fp = @fopen($filename,'w')) {  
  58. if(flock($fp,LOCK_EX)) {  
  59. rewind($fp);  
  60. foreach($nowonline as $fuid => $ftime) {  
  61. $fline = $fuid.'|'.$ftime."/n";  
  62. @fputs($fp,$fline);  
  63. }  
  64. flock($fp,LOCK_UN);  
  65. fclose($fp);  
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 萨迦县| 丰镇市| 桂阳县| 灵台县| 海丰县| 都匀市| 图木舒克市| 无极县| 吴忠市| 大余县| 屏边| 恩平市| 桐梓县| 大足县| 尉犁县| 顺义区| 南和县| 肥乡县| 六安市| 金乡县| 华容县| 淳安县| 阿拉善右旗| 泸溪县| 临汾市| 邹平县| 洱源县| 云霄县| 永康市| 砀山县| 依兰县| 垦利县| 西安市| 高邑县| 隆林| 库尔勒市| 台江县| 微山县| 三亚市| 峨边| 涿州市|