ho
una serie di indirizzi di utentiPrendi il lat, base lng all'indirizzo
array:5 [▼
0 => array:2 [▼
"name" => " Admin"
"address" => "111 Park AveFloor 4 New York, NY"
]
1 => array:2 [▼
"name" => "User A"
"address" => "12 Main Street Cambridge, MA"
]
2 => array:2 [▼
"name" => "Apple HQ"
"address" => "1 Infinite Loop Cupertino, California"
]
3 => array:2 [▼
"name" => "Google MA"
"address" => "355 Main St Cambridge, MA"
]
4 => array:2 [▼
"name" => "site HQ"
"address" => "300 Concord Road Billerica, MA "
]
]
Il mio obiettivo
è per afferrare la lat
e lng
di ogni indirizzo, e costruisci qualcosa del genere
[
["Admin", 18.3114513, -66.9219513, 0],
["User A", 25.3253982, 44.5503772, 1],
["Apple HQ", 33.0241101, 39.5865834, 2],
["Google MA", 43.9315743, 20.2366877, 3],
["site HQ", 32.683063, 35.27481, 4]
]
quindi posso tracciarli in Google Map.
ho provato:
fare un ricciolo di
https://maps.googleapis.com/maps/api/geocode/json?address='.$address.'&key=***
$data = shell_exec('curl '.$url);
ho ottenuto
questo ritorno come una risposta, dopo decodificarlo
$data = json_decode($data);
{#278 ▼
+"results": array:1 [▼
0 => {#298 ▼
+"address_components": array:2 [▶]
+"formatted_address": "PR-111, Puerto Rico"
+"geometry": {#300 ▼
+"bounds": {#301 ▶}
+"location": {#304 ▼
+"lat": 18.3114513
+"lng": -66.9219513
}
+"location_type": "GEOMETRIC_CENTER"
+"viewport": {#305 ▶}
}
+"place_id": "ChIJrdMXucS4AowRF4jHu2ji58U"
+"types": array:1 [▶]
}
]
+"status": "OK"
}
Come potete vedere, ora posso accedere al lat, lng accedendo
$location = $data->results[0]->geometry->location;
Si potrebbe dire, se è possibile accedere ad esso - perché stai ancora facendo questa domanda?
Bene, quello lat, lng i dati che sto tornando dalla risposta dell'API producono errato indicatore di Google Map.
Non sono sicuro del motivo/come è errato, ma sono sicuro che tutti i miei indirizzi utente sono negli Stati Uniti, e qui è il mio risultato di Google Map Marker. Nessuno di loro mostra negli Stati Uniti.
Google Map Risultato
sto a corto di idee ora.
Qualsiasi suggerimento/aiuto/suggerimento significherà molto per me.
Aggiornamento
Grazie a questa answer
sarò in grado di ottenere il lat, lng e tracciare marcatori corretti sul mio Google Map ora.
siete alla ricerca di un po 'l'indirizzo generico. cosa succederebbe se taggassi "USA" alla fine di loro? –
Hmm buona chiamata, lasciami provare. – ihue
Indipendentemente dal problema reale, * questa * è una domanda davvero ben strutturata (+1). – Jan