当前位置: 代码迷 >> PHP >> php 透过 ip地址 进行城市定位
  详细解决方案

php 透过 ip地址 进行城市定位

热度:655   发布时间:2016-04-28 17:30:54.0
php 通过 ip地址 进行城市定位

ip城市定位新浪接口:

   /**     * 新浪ip 地址获取城市信息     */    //根据ip 地址获取所在城市信息	function getIPLoc_sina($queryIP){		$url = 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip='.$queryIP;		$ch = curl_init($url);		curl_setopt($ch,CURLOPT_ENCODING ,'utf8');		curl_setopt($ch, CURLOPT_TIMEOUT, 5);		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ; // 获取数据返回		$location = curl_exec($ch);		$location = json_decode($location);		curl_close($ch);		$loc = "";		if($location===FALSE) return "";		if (empty($location->desc)) {			$loc = $location->province.$location->city.$location->district.$location->isp;		}else{			$loc = $location->desc;		}		return $loc;	}    echo getIPLoc_sina("183.37.209.57");

ip地址 ip138 地址查询

header("content-type:text/html;charset=utf8");    	function get_city($ip=null) {        $ip = $ip?$ip:$_SERVER['REMOTE_ADDR'];        $url = "http://www.ip138.com/ips1388.asp?ip=$ip&action=2";        $res = file_get_contents($url);        // 将网页 转码 成utf8        $encode = mb_detect_encoding($res, array("ASCII","UTF-8","GB2312","GBK","BIG5"));        if($encode != "UTF-8"){            $res = iconv($encode,"UTF-8", $res);        }        $pos =  stripos($res,"本站主数据:");        $str = substr($res, $pos, 60);        if (preg_match('/^本站主数据:(.+)省(.+)市/i', $str, $m)) {            $addr = array();            $addr['prov'] = $m[1];            $addr['city'] = $m[2];            return $addr;        }        return ;    }    //清除cookie    foreach ($_COOKIE as $key => $val) {        $_COOKIE[$key] = '';    }    //使用范例    $address= get_city("183.37.209.57");  //202.96.154.8 深圳    var_dump($address);




  相关解决方案