>  기사  >  백엔드 개발  >  php 透过 ip地址 进行城市定位

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

WBOY
WBOY원래의
2016-06-13 12:19:07890검색

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);




성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.