Mit dieser Funktion lassen sich die Koordinaten zu einer „Google-lesbaren“ Adresse finden. Dies macht zum Beispiel bei der Einblendung von Google Maps sinn. Diese Funktion ist über das einfache „file_get_contents“ realisiert. Wenn der Server allow_url_fopen nicht erlaubt, muss hier der Weg über Sockets gewählt werden (s. get_remote_file()). Achtung: Bei mehrfacher Abfrage von Koordinaten über den Google-Server wird nach 10 Anfragen die Rückgabe gesperrt (dies für wenige Sekunden).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<?php /** * Mit dieser Funktion lassen sich die Koordinaten zu einer "Google-lesbaren" Adresse finden. Dies * macht zum Beispiel bei der Einblendung von Google Maps sinn. * Diese Funktion ist über das einfache "file_get_contents" realisiert. Wenn der Server * allow_url_fopen nicht erlaubt, muss hier der Weg über Sockets gewählt werden (s. get_remote_file()). * Achtung: Bei mehrfacher Abfrage von Koordinaten über den Google-Server wird nach 10 Anfragen * die Rückgabe gesperrt (dies für wenige Sekunden). * * @param string $address * @return array * @see http://www.php-function.de/funktion/sockets/geo_coordinates/ */ function geo_coordinates($address){ $geo = file_get_contents("http://maps.google.com/maps/geo?q=".rawurlencode($address)); if($geo && substr_count($geo, '"code": 200,') != -1){ preg_match("#\[ ([0-9\.]+), ([0-9\.]+), 0 \]#", $geo, $match); return array($match[2], $match[1]); } } ?> |
Google+
Schreibe einen Kommentar