加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php实现统计网站在线人数的方法

发布时间:2020-12-13 02:37:12 所属栏目:PHP教程 来源:网络整理
导读:《:php实现统计网站在线人数的方法》要点: 本文介绍了:php实现统计网站在线人数的方法,希望对您有用。如果有疑问,可以联系我们。 本篇章节讲解php实现统计网站在线人数的办法.供大家参考研究.具体实现办法如下: PHP实例 ?phpfunction getIpAdd

《:php实现统计网站在线人数的方法》要点:
本文介绍了:php实现统计网站在线人数的方法,希望对您有用。如果有疑问,可以联系我们。

本篇章节讲解php实现统计网站在线人数的办法.分享给大家供大家参考.具体实现办法如下:PHP实例

<?php
function getIpAddress() { // 取得当前用户的IP地址
 if (getenv('HTTP_CLIENT_IP')) {
 $ip = getenv('HTTP_CLIENT_IP');
 } elseif (getenv('HTTP_X_FORWARDED_FOR')) {
 $ip = getenv('HTTP_X_FORWARDED_FOR');
 } elseif (getenv('REMOTE_ADDR')) {
 $ip = getenv('REMOTE_ADDR');
 } else {
 $ip = $_SERVER['REMOE_ADDR'];
 } 
 return $ip;
} 
function writeover($filename,$data,$method = 'w',$chmod = 0){
 $handle = fopen($filename,$method);
 !handle && die("文件打开失败");
 flock($handle,LOCK_EX);
 fwrite($handle,$data);
 flock($handle,LOCK_UN);
 fclose($handle);
 $chmod && @chmod($filename,0777);
} 
function count_online_num($time,$ip) {
 $fileCount = './count.txt';
 $count = 0;
 $gap = 900; //15分钟不刷新页面就
 if (!file_exists($fileCount)) {
 $str = $time . "t" . $ip . "rn";
 writeover($fileCount,$str,'w',1);
 $count = 1;
 } else {
 $arr = file($fileCount);
 $flag = 0;
 foreach($arr as $key => $val) {
  $val= trim($val);
  if ($val != "") {
  list($when,$seti) = explode("t",$val);
  if ($seti ==$ip) {
   $arr[$key] = $time . "t" . $seti;
   $flag = 1;
  } else {
   $currentTime = time();
   if ($currentTime - $when > 900) {
   unset($arr[$key]);
   }else{
   $arr[$key]=$val;
   }
  } 
  } 
 } 
 if ($flag == 0) {
  array_push($arr,$time . "t" . $ip);
 } 
 $count = count($arr);
 $str = implode("rn",$arr);
 $str.="rn";
 writeover($fileCount,0);
 unset($arr);
 } 
 return $count;
} 
$time = time();
$ip = getIpAddress();
$online_num = count_online_num($time,$ip);
echo $online_num;
?>

希望本文所述对大家的php程序设计有所赞助.PHP实例

《:php实现统计网站在线人数的方法》是否对您有启发,欢迎查看更多与《:php实现统计网站在线人数的方法》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读