2017-05-07 42 views
0

我在這裏做錯了什麼?我想從Google地圖的郵政編碼中獲取經緯度,這很容易,我得到了結果,但我似乎無法保存它們。這是我正在使用的。我只需要獲得並保存lnglat,但似乎超過1;我想要'位置'中的那個。使用JSON從Google地圖獲取變量

$get_pickup_coords = "https://maps.googleapis.com/maps/api/geocode/xml?&address=cv57bt&sensor=false"; 
$pickup_data = @file_get_contents($get_pick_coords); 
$pickup_result = json_decode($pickup_data, true); 

$latitude = $pickup_result[3]; 

回答

0

腳本中存在一些錯誤。對於初學者來說,你正在使用一個xml輸出,並試圖json_decode它。通過在google api中傳遞json參數而不是xml來更正此問題。

其次,$pickup_result[3]不會給你的LAT多頭,得到它,如下圖所示:

$get_pickup_coords = "https://maps.googleapis.com/maps/api/geocode/json?&address=cv57bt&sensor=false"; 
$pickup_data = file_get_contents($get_pickup_coords); 
$pickup_result = json_decode($pickup_data, true); 
$lat = $pickup_result['results'][0]['geometry']['location']['lat']; 
$long = $pickup_result['results'][0]['geometry']['location']['lng']; 

$lat$long變量分別包含經度和緯度。

+0

謝謝你的工作! – Mia

+0

不客氣。你能否贊同這個答案:) – gaganshera

0
$url = "https://maps.googleapis.com/maps/api/geocode/json?address=cv57bt"; 
$data = json_decode(file_get_contents($url)); 
$location=$data->results[0]->geometry->location; 

echo 'Latitude:',$location->lat,' Longitude:',$location->lng; 
相關問題