php+memcache实现的网站在线人数统计代码


Posted in PHP onJuly 04, 2014

今天闲来无事,想在博客统计中显示在线人数。在网上找了好多例子,不是数据库存储数据就是文件存储,代码也看起来过于复杂。

晚上回来后,构思了下,看到我服务器中安装有 Memcache 服务,何不用 Memcache 实现呢。

下面就来讲下实现过程:

效果图:

php+memcache实现的网站在线人数统计代码

实现代码:

<?php
$mc = new Memcache ();

// 连接memcache
$mc->connect ( "127.0.0.1", 11211 );

// 获取 在线用户 IP 和 在线时间数据
$online_members = $mc->get ( 'online_members' );

// 如果为空,初始化数据
if (! $online_members) {
 $online_members = array ();
}

// 获取用户ip
$ip = $_SERVER ["REMOTE_ADDR"];

// 为访问用户重新设置在线时间
$online_members [$ip] = time ();

foreach ($online_members as $k => $v) {
 // 如果三分钟后再未访问页面,刚视为过期
 if (time() - $v > 180) {
 unset($online_members[$k]);
 }
}

// 重新设置在线用户数据
$mc->set ( 'online_members', $online_members );

// 重新获取在线用户数据
$online_members = $mc->get ( 'online_members' );

// 输入统计在线人数
echo count($online_members);
?>
PHP 相关文章推荐
一步一步学习PHP(3) php 函数
Feb 15 PHP
JS 网站性能优化笔记
May 24 PHP
解析php中两种缩放图片的函数,为图片添加水印
Jun 14 PHP
php之CodeIgniter学习笔记
Jun 17 PHP
PHP设置图片文件上传大小的具体实现方法
Oct 11 PHP
自己写的兼容低于PHP 5.5版本的array_column()函数
Oct 24 PHP
PHP获取文件相对路径的方法
Feb 26 PHP
PHP session文件独占锁引起阻塞问题解决方法
May 12 PHP
php实现编辑和保存文件的方法
Jul 20 PHP
php使用fullcalendar日历插件详解
Mar 06 PHP
在Laravel的Model层做数据缓存的实现
Sep 26 PHP
Laravel相关的一些故障解决
Aug 19 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
Jul 04 #PHP
CodeIgniter安全相关设置汇总
Jul 03 #PHP
php使用pack处理二进制文件的方法
Jul 03 #PHP
PHP源码分析之变量的存储过程分解
Jul 03 #PHP
ThinkPHP让分页保持搜索状态的方法
Jul 02 #PHP
ThinkPHP实现批量删除数据的代码实例
Jul 02 #PHP
Thinkphp中import的几个用法详细介绍
Jul 02 #PHP
You might like
火车头采集器3.0采集图文教程
2007/03/17 PHP
PHP实现读取一个1G的文件大小
2013/08/24 PHP
ThinkPHP中的关联模型注意点
2014/06/16 PHP
php实现通用的信用卡验证类
2015/03/24 PHP
Yii2框架数据库简单的增删改查语法小结
2016/08/31 PHP
php实现基于pdo的事务处理方法示例
2017/07/21 PHP
javascript 面向对象 function类
2010/05/13 Javascript
JavaScript 匿名函数和闭包介绍
2015/04/13 Javascript
JS获取屏幕高度的简单实现代码
2016/05/24 Javascript
一览画面点击复选框后获取多个id值的方法
2016/05/30 Javascript
JavaScript实现form表单的多文件上传
2020/03/27 Javascript
js canvas实现写字动画效果
2018/11/30 Javascript
详解js根据百度地图提供经纬度计算两点距离
2019/05/13 Javascript
vue路由中前进后退的一些事儿
2019/05/18 Javascript
vue通信方式EventBus的实现代码详解
2019/06/10 Javascript
微信小程序实现上传多张图片、删除图片
2020/07/29 Javascript
vue+iview框架实现左侧动态菜单功能的示例代码
2020/07/23 Javascript
Python随机生成数模块random使用实例
2015/04/13 Python
Linux下通过python访问MySQL、Oracle、SQL Server数据库的方法
2016/04/23 Python
Python爬虫爬取美剧网站的实现代码
2016/09/03 Python
python制作websocket服务器实例分享
2016/11/20 Python
python中文编码与json中文输出问题详解
2018/08/24 Python
Django model select的多种用法详解
2019/07/16 Python
使用Python快乐学数学Github万星神器Manim简介
2019/08/07 Python
python3实现高效的端口扫描
2019/08/31 Python
详解基于python的多张不同宽高图片拼接成大图
2019/09/26 Python
使用Python测试Ping主机IP和某端口是否开放的实例
2019/12/17 Python
django rest framework 过滤时间操作
2020/07/12 Python
用python实现前向分词最大匹配算法的示例代码
2020/08/06 Python
First Aid Beauty官网:FAB急救面霜
2018/05/24 全球购物
管理专员自荐信
2014/01/26 职场文书
工程专业应届生求职信
2014/02/19 职场文书
出生证明公证书
2014/04/09 职场文书
听课评语大全
2014/04/30 职场文书
大学专科自荐信
2014/06/17 职场文书
暑期实践个人总结
2015/03/06 职场文书