簡體   English   中英

使用完整地址無法獲得正確的緯度和經度

[英]Not getting correct latitude & longitude with full address

$fulladdress = 'South Bay Hospital 4016 Sun City Center Blvd Sun City Center Florida 33573';
$address = str_replace(' ','+',$fulladdress);

$url = "http://maps.googleapis.com/maps/api/geocode/json?address='".@urlencode($address)."'&sensor=false";

$result_string = @file_get_contents($url);<br>
$result = @json_decode($result_string, true);<br>
$result1[]=@$result['results'][0];<br>
$result2[]=$result1[0]['geometry'];<br>
$result3[]=$result2[0]['location'];<br>
return $result3[0]; 

我正在使用這個谷歌地理編碼API獲取經度和經度。我已通過完整地址“南灣醫院4016太陽城市中心大道太陽城市中心佛羅里達州33573”,但它沒有給出完整的經緯度。 當我檢查print_r($ result)時。 所以它正在自動刪除“南灣醫院”並給出“4016太陽城市中心大道太陽城市中心佛羅里達33573”的經緯度,這就是為什么谷歌地圖標記不正確的地方。

檢查一下:

// We get the JSON results from this request
$geo = file_get_contents('http://maps.googleapis.com/maps/api/geocode/json?address='.urlencode($address).'&sensor=false');
// We convert the JSON to an array
$geo = json_decode($geo, true);
// If everything is cool
if ($geo['status'] = 'OK') {
  // We set our values
  $latitude = $geo['results'][0]['geometry']['location']['lat'];
  $longitude =  $geo['results'][0]['geometry']['location']['lng'];
}

它為我工作

$address = "Your Address";
        $prepAddr = str_replace(' ', '+', $address);
        $geocode = file_get_contents('http://maps.google.com/maps/api/geocode/json?address=' . $prepAddr . '&sensor=false');
        $output = json_decode($geocode);
        $latitude = $output->results[0]->geometry->location->lat;
        $longitude = $output->results[0]->geometry->location->lng;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM