时间:2021-05-26
本文实例讲述了php实现统计网站在线人数的方法。分享给大家供大家参考。具体实现方法如下:
<?phpfunction 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 . "\r\n"; 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("\r\n", $arr); $str.="\r\n"; writeover($fileCount, $str, 'w', 0); unset($arr); } return $count;} $time = time();$ip = getIpAddress();$online_num = count_online_num($time,$ip);echo $online_num;?>希望本文所述对大家的php程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了PHP实现统计在线人数的方法。分享给大家供大家参考,具体如下:我记得ASP里面统计在线人数用application这个对象就可以了。PHP怎么设计
这是一个非常精确的,通过php实现统计在线人数的方法,想知道怎么实现的请耐心阅读。
本文实例讲述了php模仿aspApplication对象在线人数统计实现方法。分享给大家供大家参考。具体实现方法如下:复制代码代码如下:/*用法:applica
本文实例讲述了PHP+jquery实时显示网站在线人数的方法。分享给大家供大家参考。具体分析如下:在线人数最简单的就是直接利用js调用php,这样可以显示出有多
可以实现在线人数统计,日访问量统计,月访问量统计。。。。。