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 相关文章推荐
配置支持SSI
Nov 25 PHP
PHP入门速成教程
Mar 19 PHP
请php正则走开
Mar 15 PHP
网站用php实现paypal整合方法
Nov 28 PHP
php连接数据库代码应用分析
May 29 PHP
PHP中isset()和unset()函数的用法小结
Mar 11 PHP
WebQQ最新登陆协议的用法
Dec 22 PHP
php使用Cookie实现和用户会话的方法
Jan 21 PHP
php生成word并下载代码实例
Mar 15 PHP
laravel使用Faker数据填充的实现方法
Apr 12 PHP
基于PHP实现微信小程序客服消息功能
Aug 12 PHP
PHPstorm启用自动换行的方法详解(IDE)
Sep 17 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中heredoc的使用方法
2013/06/17 PHP
详解PHP数组赋值方法
2015/11/07 PHP
全面解析PHP验证码的实现原理 附php验证码小案例
2016/08/17 PHP
php 中phar包的使用教程详解
2018/10/26 PHP
jquery提示 &quot;object expected&quot;的解决方法
2009/12/13 Javascript
DIV菜单层实现代码
2010/11/19 Javascript
让你的CSS像Jquery一样做筛选的实现方法
2011/07/10 Javascript
Js动态添加复选框Checkbox的实例方法
2013/04/08 Javascript
JS动态获取当前时间,并写到特定的区域
2013/05/03 Javascript
Javascript中的for in循环和hasOwnProperty结合使用
2013/06/05 Javascript
JavaScript控制图片加载完成后调用回调函数的方法
2015/03/20 Javascript
JS iFrame加载慢怎么解决
2016/05/13 Javascript
关于javascript原型的修改与重写(覆盖)差别详解
2016/08/31 Javascript
详解ECharts使用心得总结
2016/12/06 Javascript
利用angularjs1.4制作的简易滑动门效果
2017/02/28 Javascript
详解Vue单元测试case写法
2018/05/24 Javascript
Vue 指令实现按钮级别权限管理功能
2019/04/23 Javascript
Django Rest framework频率原理与限制
2019/07/26 Python
用python生成与调用cntk模型代码演示方法
2019/08/26 Python
python文件操作的简单方法总结
2019/11/07 Python
python 线性回归分析模型检验标准--拟合优度详解
2020/02/24 Python
Python ArgumentParse的subparser用法说明
2020/04/20 Python
HTML5离线缓存Manifest是什么
2016/03/09 HTML / CSS
联想加拿大官方网站:Lenovo Canada
2018/04/05 全球购物
澳大利亚在线家具店:Luxo Living
2019/03/24 全球购物
贯彻学习两会心得体会范文
2014/03/17 职场文书
药品营销策划方案
2014/06/15 职场文书
党员对照检查材料思想汇报
2014/09/16 职场文书
2014年大班保育员工作总结
2014/12/02 职场文书
作息时间调整通知
2015/04/22 职场文书
2015年教师师德师风承诺书
2015/04/28 职场文书
2015中学教师个人工作总结
2015/07/22 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书
2019各种保证书范文
2019/06/24 职场文书
vue实现水波涟漪效果的点击反馈指令
2021/05/31 Vue.js
Nginx HTTP跳转至HTTPS
2022/05/15 Servers