用百度高精度IP定位服務返回當前地理位置

dinghechao發表於2016-11-04
<?php

function getIP() { 
if (getenv('HTTP_CLIENT_IP')) { 
$ip = getenv('HTTP_CLIENT_IP'); 
} 
elseif (getenv('HTTP_X_FORWARDED_FOR')) { 
$ip = getenv('HTTP_X_FORWARDED_FOR'); 
} 
elseif (getenv('HTTP_X_FORWARDED')) { 
$ip = getenv('HTTP_X_FORWARDED'); 
} 
elseif (getenv('HTTP_FORWARDED_FOR')) { 
$ip = getenv('HTTP_FORWARDED_FOR'); 

} 
elseif (getenv('HTTP_FORWARDED')) { 
$ip = getenv('HTTP_FORWARDED'); 
} 
else { 
$ip = $_SERVER['REMOTE_ADDR']; 
} 
return $ip; 
} 

$ip=getIP() ;



$wz=@file_get_contents("http://api.map.baidu.com/highacciploc/v1?qcip={$ip}&qterm=pc&ak=ieLy34VnQ9xz65BBEjFbf3Ih&coord=bd09ll&extensions=3");

$array=json_decode($wz);

$a=object_array($array);

function object_array($array){
   if(is_object($array))
   {
    $array = (array)$array;
   }
   if(is_array($array))
   {
    foreach($array as $key=>$value)
    {
     $array[$key] = object_array($value);
    }
   }
   return $array;
}

echo $a[content][pois][0][address];

?>



例項:http://t.iaozi.com/web/ditu/


相關文章