利用文件属性结合Session实现在线人数统计


Posted in PHP onOctober 09, 2006

<?php
ob_start();
session_start();
$num=0;
$dirpt    =    "online";
$reftime    =    1;

if (is_dir($dirpt) && $dir = opendir($dirpt)) {
  while (($file = readdir($dir)) !== false) {
    if(strcmp($file,"..")==0 || strcmp($file,".")==0){
        continue;
    }
    $D_[date("Y-m-d H:i:s",filemtime($dirpt."/".$file))]=$file;
    $num++;
    unset($cum);
  }  
  closedir($dir);
  $filename    =    session_id();
  $fp        =    fopen($dirpt."/".$filename,"w");
  fputs($fp,"");
  fclose($fp);

  $ntime    =    date("Y-m-d H:i:s",mktime(date("H"),date("i")-1,0,date("m"),date("d"),date("Y")));
  $D_[$ntime]="-";
  krsort($D_);
  $onlinenumber=0;
  while(1){
    $vkey=key($D_);
    $onlinenumber++;
    if(strcmp($ntime,$vkey)==0){
        break;
    }else{
        array_shift($D_);
    }
  }
  array_shift($D_);
  reset($D_);
  while(count($D_)>0){
    $ckey=key($D_);
    unlink($dirpt."/".$D_[$ckey]);
    if(!next($D_)){
        break;
    }
  }

}else{
    @chmod("..",0777);
    @mkdir($dirpt,0777);

}
$online=$onlinenumber-1;
$retime=60*$reftime;
echo "当前在线<strong><font color=red>$online</font></strong>人<meta http-equiv=refresh content=\"{$retime},url=\">";
ob_end_flush();
?>
<!--
   《利用文件属性结合Session进行在线人数统计》

    作者:sports98
编写日期: 2003-3-19
-->

PHP 相关文章推荐
php网页后退不再出现过期
Mar 08 PHP
php读取xml实例代码
Jan 28 PHP
使用swoole扩展php websocket示例
Feb 13 PHP
PHP和Shell实现检查SAMBA与NFS Server是否存在
Jan 07 PHP
新浪SAE搭建PHP项目教程
Jan 28 PHP
Apache连接PHP后无法启动问题解决思路
Jun 18 PHP
百万级别知乎用户数据抓取与分析之PHP开发
Sep 28 PHP
php验证码生成代码
Nov 11 PHP
PHP实现通过CURL上传文件功能示例
May 30 PHP
Yii2框架redis基本应用示例
Jul 13 PHP
浅析PHP 中move_uploaded_file 上传中文文件名失败
Apr 17 PHP
Laravel 实现Controller向blade前台模板赋值的四种方式小结
Oct 22 PHP
PHP中上传大体积文件时需要的设置
Oct 09 #PHP
新版PHP极大的增强功能和性能
Oct 09 #PHP
用PHP开发GUI
Oct 09 #PHP
PHP中实现进程间通讯
Oct 09 #PHP
PHP利用COM对象访问SQLServer、Access
Oct 09 #PHP
新版mysql+apache+php Linux安装指南
Oct 09 #PHP
Win2000+Apache+MySql+PHP4+PERL安装使用小结
Oct 09 #PHP
You might like
2020显卡排行榜天梯图 显卡天梯图2020年3月最新版
2020/04/02 数码科技
PHP similar_text 字符串的相似性比较函数
2010/05/26 PHP
深入php define()函数以及defined()函数的用法详解
2013/06/05 PHP
一个完整的php文件上传类实例讲解
2015/10/27 PHP
PHP命令行执行整合pathinfo模拟定时任务实例
2016/08/12 PHP
thinkphp配置文件路径的实现方法
2016/08/30 PHP
laravel实现前后台路由分离的方法
2019/10/13 PHP
HTML 自动伸缩的表格Table js实现
2009/04/01 Javascript
jQuery多项选项卡的实现思路附样式及代码
2014/06/03 Javascript
JS的location.href跳出框架打开新页面的方法
2014/09/04 Javascript
Node.js的包详细介绍
2015/01/14 Javascript
谈谈JavaScript中function多重理解
2015/08/28 Javascript
jQuery实现灰蓝风格标准二级下拉菜单效果代码
2015/08/31 Javascript
js数组去重的5种算法实现
2015/11/04 Javascript
jquery html5 视频播放控制代码
2016/11/06 Javascript
jquery实现点击页面回到顶部
2016/11/23 Javascript
javascript实现简单的ajax封装示例
2016/12/28 Javascript
socket.io实现在线群聊功能
2017/04/07 Javascript
VUE Error: getaddrinfo ENOTFOUND localhost
2018/05/03 Javascript
详解vue-router传参的两种方式
2018/09/10 Javascript
微信小程序实现购物车小功能
2020/12/30 Javascript
python计算最小优先级队列代码分享
2013/12/18 Python
python操作redis方法总结
2018/06/06 Python
使用python对excle和json互相转换的示例
2018/10/23 Python
python实现矩阵和array数组之间的转换
2019/11/29 Python
Django Model层F,Q对象和聚合函数原理解析
2020/11/12 Python
Python 可视化神器Plotly详解
2020/12/26 Python
Python 获取异常(Exception)信息的几种方法
2020/12/29 Python
canvas画图被放大且模糊的解决方法
2020/08/11 HTML / CSS
预订全球最佳旅行体验:Viator
2018/03/30 全球购物
不拖欠农民工工资承诺书
2014/03/31 职场文书
2015年小学生暑假总结
2015/07/13 职场文书
python 算法题——快乐数的多种解法
2021/05/27 Python
前端监听websocket消息并实时弹出(实例代码)
2021/11/27 Javascript
Java中Quartz高可用定时任务快速入门
2022/04/03 Java/Android
分析SQL窗口函数之排名窗口函数
2022/04/21 Oracle