利用文件属性结合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中集成PayPal标准支付的实现方法分享
Feb 06 PHP
浅析php中如何在有限的内存中读取大文件
Jul 02 PHP
CodeIgniter框架中_remap()使用方法2例
Mar 10 PHP
跟我学Laravel之路由
Oct 15 PHP
PHP中使用file_get_contents post数据代码例子
Feb 13 PHP
CentOS安装php v8js教程
Feb 26 PHP
关于Laravel Route重定向的一个注意点
Jan 16 PHP
PHP检测接口Traversable用法详解
Dec 29 PHP
详解PHP版本兼容之openssl调用参数
Jul 25 PHP
php实现网页上一页下一页翻页过程详解
Jun 28 PHP
PHP+Redis事务解决高并发下商品超卖问题(推荐)
Aug 03 PHP
详解thinkphp的Auth类认证
May 28 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
第1次亲密接触PHP5(2)
2006/10/09 PHP
浅析php数据类型转换
2014/01/09 PHP
php实现socket推送技术的示例
2017/12/20 PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
2020/02/18 PHP
jquery点击缩略图切换视频播放特效代码分享
2015/09/15 Javascript
JS组件Bootstrap导航条使用方法详解
2016/04/29 Javascript
javascript回到顶部特效
2016/07/30 Javascript
jQuery插件WebUploader实现文件上传
2016/11/07 Javascript
JavaScript中利用for循环遍历数组
2017/01/15 Javascript
详解Vue监听数据变化原理
2017/03/08 Javascript
详谈表单重复提交的三种情况及解决方法
2017/08/16 Javascript
详解JS中统计函数执行次数与执行时间
2018/09/04 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
2018/09/14 Javascript
element上传组件循环引用及简单时间倒计时的实现
2018/10/01 Javascript
VUE基于NUXT的SSR 服务端渲染
2018/11/30 Javascript
Preload基础使用方法详解
2020/02/03 Javascript
[04:21]狐狸妈带你到现场 DOTA2 TI中国区预选赛线下赛路线指引
2014/05/22 DOTA
Python 访问限制 private public的详细介绍
2018/10/16 Python
OpenCV图像颜色反转算法详解
2019/05/13 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
2019/08/15 Python
python文件读写代码实例
2019/10/21 Python
Python3如何对urllib和urllib2进行重构
2019/11/25 Python
Python开发企业微信机器人每天定时发消息实例
2020/03/17 Python
Ubuntu中配置TensorFlow使用环境的方法
2020/04/21 Python
基于python计算滚动方差(标准差)talib和pd.rolling函数差异详解
2020/06/08 Python
python 如何区分return和yield
2020/09/22 Python
Airbnb爱彼迎官网:成为爱彼迎房东,赚取收入
2019/03/14 全球购物
考试不及格检讨书
2014/01/09 职场文书
婚礼主持词开场白
2014/03/13 职场文书
护理专业毕业生自我鉴定总结
2014/03/24 职场文书
商场促销活动策划方案
2014/08/18 职场文书
立志成才演讲稿
2014/09/04 职场文书
2015年外联部工作总结
2015/04/03 职场文书
讲座通知范文
2015/04/23 职场文书
pytorch中的model.eval()和BN层的使用
2021/05/22 Python
Golang使用Panic与Recover进行错误捕获
2022/03/22 Golang