26sep/110
Google maps API geocoding met Zend_Http_Client
Voor een leukheidje in een CMS wilde ik de geo-coordinaten van een adres ophalen. Ik had al wel iets liggen maar dat was wat oudere code en wilde de output als JSON hebben. Hier de meest recht-toe-recht-aan oplossing om verder te ontwikkelen naar wens:
// Address to lookup. Don't overlook the + instead of spaces
$address = 'Stationsplein+45,3013+AK,ROTTERDAM';
$client = new Zend_Http_Client();
$client->setUri('https://maps.googleapis.com/maps/geo');
$client->setConfig(array('maxredirects' => 0, 'timeout' => 30));
$client->setParameterGet('output', 'json');
$client->setParameterGet('q', $address);
$response = $client->request('GET');
$body = $response->getBody();
$response = Zend_Json::decode($body, Zend_Json::TYPE_OBJECT);
if($response->Status->code == 200) {
// Jeej, success
Zend_Debug::dump($response);
} else {
// Trouble!
Zend_Debug::dump($response);
}
Zoals ik al zei, geen übercode die klaar is voor gebruik maar een leuke basis voor implementatie in een Google maps service of class.
Improve the web with Nofollow Reciprocity.