IP分类PHPCopy语言代码:
$array='起始ip终止ip国家省市ISP单位 ...
IP
分类PHP
Copy
语言代码:
<?php
$array='起始ip 终止ip 国家 省 市 ISP 单位 属性';
$str=explode(' ',$array);
foreach ($str as $val)
{
if($val!='')
$str2[]=$val; //丢出数组.
}unset($str,$array);
function arrch($str)
{global $str2;
if(!is_array($str2)||$str=='')
return false;
$array=explode(' ',$str);
foreach ($array as $val)
{
if(ereg('(省|市)',$val))
$arr2=explode('省',$val);
if($val!='')
$str3[]=$val; //丢出数组.
}unset($str,$array);
for ($i=0;$i<count($str2);$i++)
{
if(isset($str3[$i]))
{$array[$str2[$i]]=trim($str3[$i]);}
else {$array[$str2[$i]]='auto';}
}
return $array;
}
$str='018.000.000.000 018.255.255.255 美国 麻省理工学院
218.075.127.244 218.075.127.247 中国 浙江省 杭州市 荧安网吧
218.075.127.248 218.075.127.255 中国 浙江省 杭州市 电信
218.075.128.000 218.075.132.003 中国 湖南省 常德市 电信
218.075.132.020 218.075.132.023 中国 湖南省 常德市 沸点网吧
218.075.132.028 218.075.132.031 中国 湖南省 常德市 天声世纪公司'; //这有点复杂,先分数组..
$str.="\n"; //增加一个断行..以便让正则可以抓取到..
preg_match_all('/[0-9]{3}.*\n/isU',$str,$farr);
$strarr=$farr[0];
foreach ($strarr as $val)
{ if($val!='')
$array[]=arrch($val);
}
if($array!=false)
print_r($array); //最张最完美的..
?>