>백엔드 개발 >PHP 튜토리얼 >로그를 계산하고 정렬하는 PHP 프로그램

로그를 계산하고 정렬하는 PHP 프로그램

WBOY
WBOY원래의
2016-07-25 09:03:16966검색
  1. function topIp($logfile,$length=3){
  2. $handle = fopen($logfile, 'r');
  3. $countip = array();//统计ip
  4. if ($handle) {
  5. while ($buffer = fgets($handle)) {//逐行读取文件
  6. $arr = preg_split('/t/',$buffer);
  7. if(strstr($arr[2],"small")){//小图
  8. //ip为键,出现次数为指
  9. $countip[$arr[1]] = $countip[$arr[1]] ? $countip[$arr[1]] : 1;
  10. }
  11. }
  12. fclose($handle);
  13. arsort($countip);//ip出现次数倒序
  14. return array_slice($countip,0,$length);//提取
  15. }
  16. }
  17. $topips = topIp('20121030.log',3);
  18. var_dump($topips);
  19. ?>
复制代码

输出的结果: array(3) { ["192.168.1.110"]=> int(10) ["192.168.1.108"]=> int(8) ["192.168.1.120"]=> int(7) }



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.