您当前位于: 首页 » PHP » PHP实现查询IP地址对应的具体位置、地区(文本数据)

PHP实现查询IP地址对应的具体位置、地区(文本数据)10/20/2007

     首先,这篇文章还是一如既往的菜鸟文章,没有任何技术可言,但却是我生产出来的。博客搞到现在文章还没有100篇文章,要超过也很简单。不过我不打算那样做!烂萝卜也就烂萝卜吧,我没有打算用别人的“好梨”来充我的门面,自己的东西嘛,写的再烂我也喜欢,写到这里,也许作为看官的您一定稍微感到一点点恶心!没关系,现在我就把烂萝卜呈上来~,我还是那句话,博客文章太少了,依旧仍然照样喜欢自己写些烂萝卜上来充数!!!
     用PHP读取预存的IP数据库(姑且先这么称呼,偶这里用的是PW(http://www.phpwind.net/)的ipdata),然后查询找出该IP对应的地区,甚至是具体位置,如某某网吧、某某公寓!呵呵,这些IP数据都不是我收集的呀,不要说我暴你隐私哈!

<?

header('Content-Type=text/html;charset=gb2312');

$ip=trim($_GET['ip']);

if(preg_match('/[^.0-9]/',$ip)) exit('不是一个应有的IP格式.');

$inputIp=ip2long($ip);

$ipdataFile='http://www.phpwind.net/ipdata/'.substr($ip,0,strpos($ip,'.')).'.txt';

!file_exists($ipdataFile) && $ipdataFile='http://www.phpwind.net/ipdata/0.txt';

$sFile=file($ipdataFile);

foreach($sFile as $sLine){

  $arrIpdata=explode(" ",$sLine);

  $startIp=ip2long($arrIpdata[0]);

  $endIp=ip2long($arrIpdata[1]);

  $area=$arrIpdata[2].$arrIpdata[3];

  if($inputIp>=$startIp && $inputIp<=$endIp){

    echo '所在地区是:'.$area;

    define("IF_SUCCESS",true);

    break;

  }

}

if(!defined("IF_SUCCESS")) echo '未知区域.';

?>




代码就这么多,也许不够严谨,我也说了,这个只是个练习而已!罢了,就写到这里了。

9,245位童鞋围观 | 6条评论标签:  

6条评论
  1. array 说:

    上面网站的ip数据库,我查询后怎么他自己的网站地址都显示未知区域啊。。

  2. 哈哈 说:

    可是我还是不知道怎么用你那个查IP 的具体物理地址  能讲一下吗?

  3. discovery 说:

    这篇文章还是一如既往的菜鸟文章,没有任何技术可言,但却是我生产出来的

    smile说得好.任何技术都是一点点积累的.正在拜读你的文章中....

发表评论

(发广告、垃圾评论者请慎重,点击左边按钮可能会造成下半身永久性创伤)