par
efedril » 28 nov. 2013, 15:27
Bonjour à tous
je cherche a utiliser correctement l'API Googlemaps afin de récupérer les coordonnées d'une adresse pour se faire je créer le code suivant qui pour le moment m'affiche le résultat retourner
<?php
// On prépare l'adresse à rechercher
$address = "Palais de l'Elysée 55, rue du faubourg Saint-Honoré 75008 Paris";
// On prépare l'URL du géocodeur
$geocoder = "http://maps.googleapis.com/maps/api/geocode/json?address=%s&sensor=false";
// Pour cette exemple, je vais considérer que ma chaîne n'est pas
// en UTF8, le géocoder ne fonctionnant qu'avec du texte en UTF8
$url_address = utf8_encode($address);
// Penser a encoder votre adresse
$url_address = urlencode($url_address);
// On prépare notre requête
$query = sprintf($geocoder,$url_address);
// On interroge le serveur
$results = file_get_contents($query);
// On affiche le résultat
var_dump(json_decode($results));
?>
résultat retourner :
{
"results" : [
{
"address_components" : [
{
"long_name" : "Le Palais de L'Élysée",
"short_name" : "Le Palais de L'Élysée",
"types" : [ "point_of_interest", "establishment" ]
},
{
"long_name" : "55",
"short_name" : "55",
"types" : [ "street_number" ]
},
{
"long_name" : "Rue du Faubourg Saint-Honoré",
"short_name" : "Rue du Faub. Saint-Honoré",
"types" : [ "route" ]
},
{
"long_name" : "8e Arrondissement",
"short_name" : "8e Arrondissement",
"types" : [ "sublocality", "political" ]
},
{
"long_name" : "Paris",
"short_name" : "Paris",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Paris",
"short_name" : "75",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Île-de-France",
"short_name" : "IDF",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "France",
"short_name" : "FR",
"types" : [ "country", "political" ]
},
{
"long_name" : "75008",
"short_name" : "75008",
"types" : [ "postal_code" ]
}
],
"formatted_address" : "Le Palais de L'Élysée, 55 Rue du Faubourg Saint-Honoré, 75008 Paris, France",
"geometry" : {
"location" : {
"lat" : 48.8704156,
"lng" : 2.3167539
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 48.8777544,
"lng" : 2.3327613
},
"southwest" : {
"lat" : 48.8630757,
"lng" : 2.3007465
}
}
},
"types" : [ "point_of_interest", "establishment" ]
}
],
"status" : "OK"
}
mais voila j'aimerais extraire les "lat" : 48.8630757, "lng" : 2.3007465 mais je sais pas comment mi prendre.
Bonjour à tous
je cherche a utiliser correctement l'API Googlemaps afin de récupérer les coordonnées d'une adresse pour se faire je créer le code suivant qui pour le moment m'affiche le résultat retourner
[php]<?php
// On prépare l'adresse à rechercher
$address = "Palais de l'Elysée 55, rue du faubourg Saint-Honoré 75008 Paris";
// On prépare l'URL du géocodeur
$geocoder = "http://maps.googleapis.com/maps/api/geocode/json?address=%s&sensor=false";
// Pour cette exemple, je vais considérer que ma chaîne n'est pas
// en UTF8, le géocoder ne fonctionnant qu'avec du texte en UTF8
$url_address = utf8_encode($address);
// Penser a encoder votre adresse
$url_address = urlencode($url_address);
// On prépare notre requête
$query = sprintf($geocoder,$url_address);
// On interroge le serveur
$results = file_get_contents($query);
// On affiche le résultat
var_dump(json_decode($results));
?>[/php]
résultat retourner :
[php]{
"results" : [
{
"address_components" : [
{
"long_name" : "Le Palais de L'Élysée",
"short_name" : "Le Palais de L'Élysée",
"types" : [ "point_of_interest", "establishment" ]
},
{
"long_name" : "55",
"short_name" : "55",
"types" : [ "street_number" ]
},
{
"long_name" : "Rue du Faubourg Saint-Honoré",
"short_name" : "Rue du Faub. Saint-Honoré",
"types" : [ "route" ]
},
{
"long_name" : "8e Arrondissement",
"short_name" : "8e Arrondissement",
"types" : [ "sublocality", "political" ]
},
{
"long_name" : "Paris",
"short_name" : "Paris",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Paris",
"short_name" : "75",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Île-de-France",
"short_name" : "IDF",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "France",
"short_name" : "FR",
"types" : [ "country", "political" ]
},
{
"long_name" : "75008",
"short_name" : "75008",
"types" : [ "postal_code" ]
}
],
"formatted_address" : "Le Palais de L'Élysée, 55 Rue du Faubourg Saint-Honoré, 75008 Paris, France",
"geometry" : {
"location" : {
"lat" : 48.8704156,
"lng" : 2.3167539
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 48.8777544,
"lng" : 2.3327613
},
"southwest" : {
"lat" : 48.8630757,
"lng" : 2.3007465
}
}
},
"types" : [ "point_of_interest", "establishment" ]
}
],
"status" : "OK"
}[/php]
mais voila j'aimerais extraire les "lat" : 48.8630757, "lng" : 2.3007465 mais je sais pas comment mi prendre.