怎么用php计算当前在线人数

 我来答
就烦条0o
2016-12-08 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46492
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部
计算当前在线人数--用文本实现

<?php
//首先你要有读写文件的权限
//本程序可以直接运行,第一次报错,以后就可以

$online_log = "count.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"); //更新浏览者的时间

$users_online = 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 "当前有".$users_online."人在线";

?>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式