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 相关文章推荐
FCKeditor的安装(PHP)
Jan 13 PHP
PHP面向对象学习笔记之二 生成对象的设计模式
Oct 06 PHP
PHP中filter函数校验数据的方法详解
Jul 31 PHP
PHP的Socket网络编程入门指引
Aug 11 PHP
PHP中的表达式简述
May 29 PHP
PHP进行批量任务处理不超时的解决方法
Jul 11 PHP
PHP页面间传递值和保持值的方法
Aug 24 PHP
实现PHP搜索加分页
Oct 12 PHP
Yii实现文章列表置顶功能示例
Oct 18 PHP
PHP性能分析工具xhprof的安装使用与注意事项
Dec 19 PHP
PHP+swoole+linux实现系统监控和性能优化操作示例
Apr 15 PHP
laravel validate 设置为中文的例子(验证提示为中文)
Sep 29 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
基于PHP开发中的安全防范知识详解
2013/06/06 PHP
两种php实现图片上传的方法
2016/01/22 PHP
laravel项目利用twemproxy部署redis集群的完整步骤
2018/05/11 PHP
如何通过Apache在本地配置多个虚拟主机
2020/07/29 PHP
学习ExtJS table布局
2009/10/08 Javascript
jquery实现表格奇数偶数行不同样式(有图为证及实现代码)
2013/01/23 Javascript
jquery.cookie用法详细解析
2013/12/18 Javascript
jquery解析XML字符串和XML文件的方法说明
2014/02/21 Javascript
jquery+html5时钟特效代码分享(可设置闹钟并且语音提醒)
2020/03/30 Javascript
学习JavaScript设计模式(策略模式)
2015/11/26 Javascript
浅析node连接数据库(express+mysql)
2015/11/30 Javascript
终于实现了!精彩的jquery弹幕效果
2016/07/18 Javascript
Js自定义多选框效果的实例代码
2017/07/05 Javascript
浅谈vue的踩坑路
2017/08/31 Javascript
实例讲解JavaScript截取字符串
2018/11/30 Javascript
JavaScript代码压缩工具UglifyJS和Google Closure Compiler的基本用法
2020/04/13 Javascript
一篇文章带你使用Typescript封装一个Vue组件(简单易懂)
2020/06/05 Javascript
Vue前端判断数据对象是否为空的实例
2020/09/02 Javascript
Python实现的多线程端口扫描工具分享
2015/01/21 Python
Python实现递归遍历文件夹并删除文件
2016/04/18 Python
Python实现树的先序、中序、后序排序算法示例
2017/06/23 Python
selenium+python 去除启动的黑色cmd窗口方法
2018/05/22 Python
Python列表的切片实例讲解
2019/08/20 Python
html5 svg 中元素点击事件添加方法
2013/01/16 HTML / CSS
Sephora丝芙兰澳洲官方网站:国际知名化妆品购物
2016/10/27 全球购物
魅力惠奢品线上平台:MEI.COM
2016/11/29 全球购物
重新定义牛仔布,100美元以下:Warp + Weft
2018/07/25 全球购物
董事长秘书岗位职责
2013/11/29 职场文书
新教师培训方案
2014/06/08 职场文书
师范生求职自荐信
2014/06/14 职场文书
公安领导班子四风问题个人整改措施思想汇报
2014/10/09 职场文书
2014年纳税评估工作总结
2014/12/23 职场文书
世界水日宣传活动总结
2015/02/09 职场文书
优秀新员工事迹材料
2019/05/13 职场文书
适合后台管理系统开发的12个前端框架(小结)
2021/06/29 Javascript
spring boot中nativeQuery的用法
2021/07/26 Java/Android