Beliebige Entfernungen berechnen mit Google Maps

Viktor Dite, Autor des Beitrags

Von - Publiziert in Webdevelopment Blog über MySQL & PHP
Dipl. Informatiker und Tech-Blogger seit 2006.


Ich zeige Dir, wie Du schnell und einfach beliebige Entfernungen mit Google Maps berechnen kannst. Das kannst Du am Smartphone, PC oder MAc durchführen.

Entfernung berechnen mit Google Maps – ohne Route!

Du kannst in Google Maps auch auf Luftlinie Entfernungen berechnen. Auf diese Weise kannst Du schnell und einfach die Entfernung zwischen zwei Punkten auf der Karte berechnen.

Entfernung berechnen mit Google Maps #shorts Tipp

Entfernung berechnen mit Google Maps API

Mit Hilfe der Google Maps API lässt sich die Entfernung zwischen zwei Orten sehr einfach berechnen. In diesem Beitrag möchte ich zeigen, wie man mit Hilfe der Google Maps Distance Matrix API und einem einfachen URL Aufruf oder PHP die Entfernung berechnen kann.

Entfernung berechnen

Um zu sehen, wie die Google Maps Distance Matrix API funktioniert, kannst Du hier zwei Standorte eingeben um dazwischen die Entfernung berechnen zu lassen:

Ich nutze diese Funktionalität ab und an bei der Planung von Touren oder auch um mal schnell zwei, drei Entfernungen zu berechnen. Das geht wesentlich schneller als über die Google Maps Web-UI und bedarf bei gemäßigter Nutzung keine Maps API Lizenz. Einfach die URL mit ein paar Parametern aufrufen, und schon kann man die Entfernung berechnen zwischen Ort A und B.

Google API Key

Du benötigst zuerst einen Google API Key. Im Folgenden wird dieser Key als „{YOUR-API-KEY}“ bezeichnet. Hier bekommst Du einen https://developers.google.com/maps/documentation/javascript/get-api-key

Entfernung berechnen mit einem URL Abruf

Der Google Maps API Aufruf zum berechnen der Entfernung sieht in der simpelsten Variante wie folgt aus:

https://maps.googleapis.com/maps/api/distancematrix/xml?origins=PLZ_Ort_A+DE&destinations=PLZ_ORT_B +DE&mode=driving&language=de-DE&sensor=false&key={YOUR-API-KEY}

Echtes Beispiel:

https://maps.googleapis.com/maps/api/distancematrix/xml?origins=33397+DE&destinations=33098+DE&mode=driving&language=de-DE&sensor=false&key={YOUR-API-KEY}

Das lässt sich auch mit Adressen verfeinern:

https://maps.googleapis.com/maps/api/distancematrix/xml?origins=33397 Lange Str. 2+DE&destinations=33098 Marienstr. 29+DE&mode=driving&language=de-DE&sensor=false&key={YOUR-API-KEY}

Das Ergebnis der berechneten Entfernung schaut dann so aus:
Entfernung berechnen mit der Google Maps API

Dabei bedeuten die Parameter (in Kürze) folgendes:

  • origins: Start. Als PLZ, Stadtname, oder eine gesamte Adresse. Reihenfolge spielt keine Rolle. Leerzeichen sind erlaubt. +DE ist nur zur Sicherstellung, dass der Ort korrekt erkannt wird. Eigentlich nur notwendig, wenn die PLZ allein zur Positionsbestimmung herangezogen wird.
  • destinations: Zielort. Hier gilt gleiches wie bei origins
  • mode: driving steht für Auto.

Es gibt noch einige weitere Parameter. Für eine einfache Entfernungsberechnung reichen aber die benutzten.

Als Rückgabewert bekommt man eine XML Datei, die sich in PHP sehr simpel parsen lässt.

Entfernung berechnen mit PHP und der Google Maps Distance Matrix API

Für den obigen Aufruf bekomme ich die folgende XML Struktur
Google-Maps-API-Entfernungen-berechnen
Diese XML Datei lässt sich nun mittels simplexml_load_file sehr einfach auslesen und verarbeiten.

$distance = 0;
$start_adresse = '33397 Lange Str. 2';
$end_adresse = 'Marienstr. 29 33098';
if($xml=simplexml_load_file("https://maps.googleapis.com/maps/api/distancematrix/xml?origins=".$start_adresse."+DE&destinations=".$end_adresse."+DE&mode=driving&language=de-DE&sensor=false&key={YOUR-API-KEY}")){
   if($xml->status=='OK'){
      $distance = $xml->row->element->distance->text;
   }
}

Entfernung berechnen: Funktionsfähige DEMO:

Hier findet Ihr eine DEMO zur Entfernung Berechnung:

Die Demo basiert auf diesem Skript zum berechnen einer Entfernung A zu B:

<?php
$distance = 0;
$start_adresse = $_POST['start'];
$ziel_adresse = $_POST['ziel'];

if($start_adresse!='' && $ziel_adresse!=''){
	$url="https://maps.googleapis.com/maps/api/distancematrix/xml?origins=".$start_adresse."+DE&destinations=".$ziel_adresse."+DE&mode=driving&language=de-DE&sensor=false&key={YOUR-API-KEY}";
	if($xml=simplexml_load_file($url)){
   		if($xml->status=='OK'){
      		$distance = $xml->row->element->distance->text;
      		echo 'Die Entfernung zwischen ' . $start_adresse . ' und '.$ziel_adresse . ' beträgt: ' .$distance;
   		}
	}

}else{
	echo '<form action="/entfernung_berechnen.php" method="post">
	<label>Start:</label><br>
	<input type="text" name="start" value="Startadresse">
	<br>
	<label>Ziel:</label><br>
	<input type="text" name="ziel" value="Zieladresse">
	<br>
	<input type="submit" value="Berechnen">
	</form>';
}
?>
Hinweise:

  1. In der kostenlosen Version können maximal 2500 Entfernung berechnen Elemente (API Aufrufe) pro Tag
  2. und nur 100 Entfernung berechnen Elemente (API Aufrufe) pro Sekunde abgerufen werden.

Letzte Änderung: