zoukankan      html  css  js  c++  java
  • PHP获取用户IP所在地的信息

    简介:这是PHP获取用户IP所在地的信息的详细页面,介绍了和php,有关的知识、技巧、经验,和一些php源码等。

    class='pingjiaF' frameborder='0' src='http://biancheng.dnbcw.info/pingjia.php?id=340860' scrolling='no'>
    最近项目中用到了获取用户IP所在地的信息,主要是为了从IP去判断用户所在的城市,现在的城市信息基本上有分几种
    一种是用ID编号来关联城市的,还有使用缩写的代码来关联城市的。
    我们通过IP去获取所在的用户的  城市的详细信息,比如运行以下的结果得到的是 "福建省福州市 电信"
    可以得到用户的 省市及所使用的网络接入的信息
    这里调用的是百度的开放查询接口,通过网页的方式去查询然后从返回的结果中去匹配我们所需要的信息,效果还行,代码在下面,还是能凑合着用的。
    var_dump(getAddress('202.101.98.54','福州'));
    
    function getAddress($ip=null,$address='') {
            $url = "http://open.baidu.com/ipsearch/s?wd={$ip}&tn=baiduip";
            $res = mb_convert_encoding(HttpRequest($url), 'UTF-8', 'GBK');
    	//var_dump($res);
            if ( preg_match('#来自:<b>(.+)</b>#Ui', $res, $m) ) {
                    if (is_int(strpos($m[1], $address))) {
                            return $m[1];
                    }
            }
    }
    
    
    function HttpRequest($url, $data=array()) {
                    $ch = curl_init();
                    if (is_array($data) && $data) {
                            $formdata = http_build_query($data);
                            curl_setopt($ch, CURLOPT_POST, true);
                            curl_setopt($ch, CURLOPT_POSTFIELDS, $formdata);
                    }
                    curl_setopt($ch, CURLOPT_URL, $url);
                    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 2);
                    curl_setopt($ch, CURLOPT_TIMEOUT, 2);
                    return curl_exec($ch);
    }
    

    爱J2EE关注Java迈克尔杰克逊视频站JSON在线工具

    http://biancheng.dnbcw.info/php/340860.html pageNo:7
  • 相关阅读:
    刚开发的游戏《天黑请闭眼》
    用手机控制服务器
    专业网站打包/解包asp工具(E文精装版本)!
    令我爱慕的女子(转自7di.net)
    8088 汇编速查手册
    Asp调用函数是否会影响性能?
    文档管理器
    ubuntu install xxx.deb
    Java线程池的原理及几类线程池的介绍
    ubuntu download file path
  • 原文地址:https://www.cnblogs.com/ooooo/p/2245215.html
Copyright © 2011-2022 走看看