fgetcsv пропускает иногда дублирующиеся строки

Jovanni

Новичок
В чём я не прав ??
PHP:
$tempArray = array();
$fp = fopen ( 'temp.txt', 'w' );
$nn = 1;
		$fh = fopen ( 'www.txt', 'r' );
		while($info = fgetcsv ($fh,0 , ",")) {
			list($octets,$source,$dest) = $info;
			$n = $nn++;
			if ($dest == $ip) {
				$host = @geoip_org_by_name($source);
				if(!$host) {
				$geoip2host = 'Local';
				} else {
				$geoip2host = geoip_org_by_name($source);
				}
				$cntry = @geoip_country_name_by_name($source);
				if(!$cntry) {
				$country = 'Unknown';
				} else { 
				$country = geoip_country_name_by_name($source);
				}
				if (!isset($tempArray[$geoip2host.$country]))  {
					$tempArray[$geoip2host.$country] = array(0=>0, 1=>$geoip2host, 2=>$country);
				}
				$tempArray[$geoip2host.$country][0] += $octets;
			}
		}
	$tmp = array();
	foreach($tempArray as $element) 
		$tmp[] = $element[0]; 
		array_multisort($tmp, SORT_DESC, SORT_NUMERIC, $tempArray); 
		fclose ( $fh );
foreach ($tempArray as $endarr ) {
	fputcsv($fp,$endarr);
}
$sum_oct = array_sum($tmp);
$sum_oc = sprintf("%01.5f", $sum_oct / (1024*1024));
$sum_o = str_replace(".",",",$sum_oc);
fclose( $fp );
Или как переделать при помощи fgets + explode

каждый файл имеет вид :

PHP:
#:doctets,srcaddr,dstaddr
1409,46.227.122.27,109.207.118.47
59,46.227.120.1,208.69.34.19
70,46.227.120.1,41.160.0.37
2732,46.227.122.230,217.20.156.94
2122,46.227.122.230,217.20.156.97
Спасибо!!!
 
Сверху