PHP : Récupérer la position d'un téléphone utilisant Google Latitude
En quelques lignes de code PHP, il est possible de récupérer les coordonnées GPS d'un téléphone utilisant Google Latitude.
A condition bien sûr de connaitre l'URL du service JSON qui se situe en bas de la page de votre compte Google Latitude :
https://www.google.com/latitude/apps/badge?hl=fr
Ce petit bout de code PHP très simple, utilise la librairie Zend Framework pour la connexion HTTP et le décodage JSON :
<?php
require_once 'Zend/Http/Client.php';
require_once 'Zend/Json.php';
$client = new Zend_Http_Client();
$client->setUri('https://www.google.com/latitude/apps/badge/api?user=X&type=json');
$client->request('GET');
$response = $client->request();
if ($response->isError()) {
die($response->getStatus() . ": " . $response->getMessage());
}
$googleLatitude = Zend_Json::decode($response->getBody());
$coordinates = $googleLatitude['features'][0]['geometry']['coordinates'];
echo "Latitude : ". $coordinates[0];
echo "Longitude : ". $coordinates[1];
?>
A partir de ce code, il est possible de faire des choses intéressantes comme une redirection vers Google Maps par exemple :
header('Location: https://maps.google.com/maps?q='.$coordinates[1].','.$coordinates[0]);
Super simple, et très efficace ! Merci Google !