WEB开发网
开发学院WEB开发PHP 利用文件属性结合Session实现在线人数统计 阅读

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

 2003-03-25 16:36:14 来源:WEB开发网   
核心提示:<?phpob_start();session_start();$num=0;$dirpt="online";$reftime=1;if (is_dir($dirpt) && $dir = opendir($dirpt)) {while (($file = readdir($dir)) !==

<?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
-->

Tags:利用 文件 属性

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接