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,ASP.JAVA,JAVA代码格式化工具整理
Jun 15 PHP
php 学习资料零碎东西
Dec 04 PHP
PHP中::、-&amp;gt;、self、$this几种操作符的区别介绍
Apr 24 PHP
PHP中$_SERVER的详细参数与说明介绍
Oct 26 PHP
php顺序查找和二分查找示例
Mar 27 PHP
PHP捕获Fatal error错误的方法
Jun 11 PHP
PHP中的print_r 与 var_dump 输出数组
Jun 13 PHP
PHP实现页面静态化的超简单方法
Sep 06 PHP
php将print_r处理后的数据还原为原始数组的解决方法
Nov 02 PHP
PHP结合Ffmpeg快速搭建流媒体服务的实践记录
Oct 31 PHP
php输出反斜杠的实例方法
Sep 19 PHP
详细分析PHP7与PHP5区别
Jun 26 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
Windows2003 下 MySQL 数据库每天自动备份
2006/12/21 PHP
分享一下贝贝成长进度的php代码
2012/09/14 PHP
PHP Switch 语句之学习笔记
2013/09/21 PHP
简述php环境搭建与配置
2016/12/05 PHP
php制作圆形用户头像的实例_自定义封装类源代码
2017/09/18 PHP
Laravel 自动生成验证的实例讲解:login / logout
2019/10/14 PHP
Thinkphp 框架配置操作之动态配置、扩展配置及批量配置实例分析
2020/05/15 PHP
extjs grid设置某列背景颜色和字体颜色的方法
2010/09/03 Javascript
jQuery jqgrid 对含特殊字符json 数据的 Java 处理方法
2011/01/01 Javascript
jQuery(1.6.3) 中css方法对浮动的实现缺陷分析
2011/09/09 Javascript
jquery获取节点名称
2015/04/26 Javascript
轻松掌握jQuery中wrap()与unwrap()函数的用法
2016/05/24 Javascript
使用Web Uploader实现多文件上传
2016/06/08 Javascript
canvas实现探照灯效果
2017/02/07 Javascript
bootstrap table实现x-editable的行单元格编辑及解决数据Empty和支持多样式问题
2017/08/10 Javascript
Python实现CET查分的方法
2015/03/10 Python
python监控网站运行异常并发送邮件的方法
2015/03/13 Python
python实现数独算法实例
2015/06/09 Python
Python编程中对文件和存储器的读写示例
2016/01/25 Python
对Tensorflow中的变量初始化函数详解
2018/07/27 Python
django从请求到响应的过程深入讲解
2018/08/01 Python
html5定位并在百度地图上显示的示例
2014/04/27 HTML / CSS
测量实习生自我鉴定
2013/09/19 职场文书
写好自荐信的几个要点
2013/12/26 职场文书
初一体育教学反思
2014/01/29 职场文书
开学季活动策划方案
2014/02/28 职场文书
社会实践活动总结报告
2014/04/29 职场文书
本科生导师推荐信范文
2014/05/18 职场文书
2014旅游局领导班子四风问题对照检查材料思想汇报
2014/09/19 职场文书
2014年国庆节庆祝建国65周年比赛演讲稿
2014/09/21 职场文书
委托书格式要求
2015/01/28 职场文书
环保守法证明
2015/06/24 职场文书
教师节祝酒词
2015/08/11 职场文书
2019最新公司租房合同(例文)
2019/07/18 职场文书
MySQL 十大常用字符串函数详解
2021/06/30 MySQL
如何打开Win11系统注册表编辑器?Win11注册表编辑器打开修复方法
2022/04/05 数码科技