PHP+Memcache统计当前在线人数
废话不多说,直接上代码!
$memcache = new Memcache (); $memcache->connect ( "127.0.0.1", 11211 ); //获取 在线用户 IP 和 在线时间数据 $online = $memcache->get ( 'online' ); //为空,初始化数据 if (! $online) { $online = array (); } //获取用户IP $ip = $_SERVER ["REMOTE_ADDR"]; //为访问用户重新设置在线时间 $online [$ip] = time (); foreach ($online as $k => $v) { //如果5分钟后再次访问页面,视为过期并销毁 if (time() - $v > 300) { unset($online[$k]); } } //重新设置在线用户数据 $memcache->set ( 'online', $online ); //重新获取在线用户数据 $online = $memcache->get ( 'online' ); //输出统计在线人数 echo count($online),"<br />"; //打印当前在线人员数据 var_dump($online);