yinheli_user_online.php 739 B

1234567891011121314151617181920212223242526
  1. <?php
  2. $online_log="yinheli_user_online.txt";
  3. $timeout=300;
  4. $entries=file($online_log);
  5. $temp=array();
  6. for($i=0;$i<count($entries);$i++){
  7. $entry=explode(",",trim($entries[$i]));
  8. if(($entry[0]!=getenv('REMOTE_ADDR'))&&($entry[1]>time())){
  9. array_push($temp,$entry[0].",".$entry[1]."\n");//取出其他浏览者的信息,并去掉超时者,保存进$temp
  10. }
  11. }
  12. array_push($temp,getenv('REMOTE_ADDR').",".(time()+($timeout))."\n");
  13. $users_online=count($temp);
  14. $entries=implode("",$temp);
  15. $fp=fopen($online_log,"w");
  16. flock($fp,LOCK_EX);
  17. fputs($fp,$entries);
  18. flock($fp,LOCK_UN);
  19. fclose($fp);
  20. if($users_online==1){
  21. echo "<strong>Now:</strong>"."Just you online! O_o";
  22. }else{
  23. echo "<strong>Now:</strong>".$users_online." Users Online";
  24. }
  25. ?>