PHP et API Google Maps V3
Bonjour,
je souhaite récupérer les coordonnées latitude et longitude à partir d'une adresse. Mon problème c'est que ma fonction ne me renvoie aucune donnée et je ne comprends pas pourquoi.
J'utilise la fonction suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
function toCoordinates($address)
{
$bad = array(
" " => "+",
"," => "+",
"?" => "",
"&" => "",
"=" => ""
);
// nettoyage de l'adresse
$address = strtr($address,"ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ","AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn");
$address = str_replace(array_keys($bad), array_values($bad), $address);
$data = new SimpleXMLElement(file_get_contents("http://maps.googleapis.com/maps/api/geocode/xml?address=".$address."&sensor=false"));
echo "<br>data $data<br>";
$latitude = $data->result->geometry->location->lat;
$longitude = $data->result->geometry->location->lng;
$response = $data->GeocodeResponse->status;
return array($latitude, $longitude, $response);
} |
J'appelle cette fonction et je récupère le résultat de la façon suivante :
Code:
1 2 3 4 5 6
| $tab_localisation = toCoordinates($adresse);
$latitude = $tab_localisation[0];
$longitude = $tab_localisation[1];
$reponse = $tab_localisation[2];
echo "<br>Reponse: $reponse";
echo "<br>Latitude Longitude : $latitude $longitude "; |
Ce qui est étrange c'est que la fonction ne me renvoie rien pour la valeur suivante par exemple
Citation:
57 rue du Faubourg Montmartre, Paris, France 75009
Alors que si j'appelle directement l'API de Google maps cela me renvoie bien des résultats.
http://maps.googleapis.com/maps/api/geocode/xml?address=57%20rue%20du%20Faubourg%20Montmartre,%20Paris,%20France%2075009&sensor=false
Donc je ne vois pas pourquoi je ne recupere aucune information.
Par avance merci de votre aide.