2010-01-13 12 views

Répondre

33

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

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 truc côté serveur. Cela signifie que vous devez utiliser le HTTP Geocoding service. Pour ce faire, vous devrez effectuer 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']; 
} 

N.B. Le Google Maps terms of service indique explicitement que le géocodage des données sans mettre les résultats sur une carte Google est interdite.

+0

Merci. J'ai besoin du code en PHP parce que je vais montrer l'adresse de la latitude et longtitude dans les rapports comme des enregistrements ... s'il vous plaît juste moi .. – Murugesh

+8

boss, une partie d'être un programmeur est la capacité d'abstraire le code source de votre langue. Le Google Location Api est essentiellement le même dans toutes les langues utilisées (y compris la syntaxe GLatLng) –

+0

@Cannonade: Je ne veux pas répondre juste pour inclure l'exemple de code PHP. Juste un indice: il y a beaucoup de classes wrapper php pour le javascript api là-bas. –