Géocodage inverse avec l'API Google Map et PHP pour obtenir la plus proche, Lat emplacement à l'aide des coordonnées longues

StackOverflow https://stackoverflow.com/questions/2054635

Question

J'ai besoin d'une fonction pour obtenir une adresse plus proche ou de la ville de coordonnées (latitude, long) en utilisant php et géocodage inverse ... S'il vous plaît donner un exemple de code google map api

Était-ce utile?

La solution

Vous devez utiliser la méthode getLocations sur le GClientGeocoder objet dans le API Google Maps

var point = new GLatLng (43,-75);
var geocoder = new GClientGeocoder();
geocoder.getLocations (point, function(result) {
    // access the address from the placemarks object
    alert (result.address);
    });

EDIT : Ok. Vous faites ce côté serveur stuff. Cela signifie que vous devez utiliser le HTTP service de géocodage . Pour ce faire, vous devrez faire une requête HTTP en utilisant le format d'URL décrit dans l'article lié. Vous pouvez analyser la réponse HTTP et retirez l'adresse:

// set your API key here
$api_key = "";
// format this string with the appropriate latitude longitude
$url = 'http://maps.google.com/maps/geo?q=40.714224,-73.961452&output=json&sensor=true_or_false&key=' . $api_key;
// make the HTTP request
$data = @file_get_contents($url);
// parse the json response
$jsondata = json_decode($data,true);
// if we get a placemark array and the status was good, get the addres
if(is_array($jsondata )&& $jsondata ['Status']['code']==200)
{
      $addr = $jsondata ['Placemark'][0]['address'];
}

NB Google Maps termes de service stipule explicitement que les données de géocodage sans mettre les résultats sur une carte Google est interdite.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top