-
- function topIp($logfile,$length=3){
- $handle = fopen($logfile, 'r');
- $countip = array();//統計 ip
- if ($handle) {
- while ($buffer = fgets($handle)) {//ファイルを 1 行ずつ読み取ります
- $arr = preg_split('/t/',$buffer);
- if(strstr($arr[ 2 ],"small")){//小さい画像
- //ip がキー、出現数は
- $countip[$arr[1]] = $countip[$arr[1]] ++$ ? countip[$ arr[1]] : 1;
- }
- }
- fclose($handle);
- arsort($countip);//IP の発生数は逆順です
- return array_slice($countip,0,$ length);//Extract
- }
- }
- $topips = topIp('20121030.log',3);
- var_dump($topips);
- ?>
コードをコピー
出力結果:
array(3) { ["192.168.1.110"]=> int(10) ["192.168.1.108"]=> int(8) ["192.168.1.120"]=> int(7) }
|