{"id":190,"date":"2013-05-08T14:11:22","date_gmt":"2013-05-08T12:11:22","guid":{"rendered":"http:\/\/www.prolehre.com\/markusheinemann\/wordpress\/?page_id=190"},"modified":"2013-05-08T14:11:22","modified_gmt":"2013-05-08T12:11:22","slug":"distanzberechnung-mit-googlemaps","status":"publish","type":"page","link":"https:\/\/markusheinemann.com\/wordpress\/?page_id=190","title":{"rendered":"Distanzberechnung mit googlemaps"},"content":{"rendered":"<p>Um schnell eine Luftliniendistanz zwischen zwei Orten zu erhalten, ben\u00f6tigt man die Koordinaten der entsprechenden Orte.<br \/>\nDiese lassen sich mit der Google-Maps Api erfragen.<br \/>\nDazu sendet man mit php und dem Befehl: file_get_contents() eine Anfrage an den Maps Server.<\/p>\n<p>Vor Benutzung die Richtlinien von google-maps beachten!<\/p>\n<blockquote>\n<pre>&lt;?php\n\n                       function distance($lat1, $lng1, $lat2, $lng2, $miles = true)\n{\n        $pi80 = M_PI \/ 180;\n        $lat1 *= $pi80;\n        $lng1 *= $pi80;\n        $lat2 *= $pi80;\n        $lng2 *= $pi80;\n\n        $r = 6372.797; \/\/ mean radius of Earth in km\n        $dlat = $lat2 - $lat1;\n        $dlng = $lng2 - $lng1;\n        $a = sin($dlat \/ 2) * sin($dlat \/ 2) + cos($lat1) * cos($lat2) * sin($dlng \/ 2) * sin($dlng \/ 2);\n        $c = 2 * atan2(sqrt($a), sqrt(1 - $a));\n        $km = $r * $c;\n\n        return ($miles ? ($km * 0.621371192) : $km);\n}\n\/* Testtherm\necho distance(50.942746,11.578375,50.892314,11.518453,false);\n*\/\n\n$address = 'Schanzenstr. 70, 22357 Hamburg, Deutschland';\n\n$address=$_POST['adress'];\n\necho 'Eingegebene Adresse: '.$address;\n$path = 'http:\/\/maps.googleapis.com\/maps\/api\/geocode\/json?address='.urlencode($address).'&amp;sensor=false';\n$geocode = file_get_contents($path);\n$output = json_decode($geocode);\nif ($geocode=='')\n{echo 'leer';}\n\n$latitude  = $output-&gt;results[0]-&gt;geometry-&gt;location-&gt;lat;\n\n$longitude = $output-&gt;results[0]-&gt;geometry-&gt;location-&gt;lng;\necho '&lt;br&gt; Koordinaten: '.$latitude.','.$longitude.'&lt;br&gt;';\n\n$latjena='50.9270540';\n$longjena='11.58923720';\n\n\/*Bild mit Google Api *\/\n$mapsname1='http:\/\/maps.google.com\/maps\/api\/staticmap?';\n$mapsname2='center=50.833698,10.744629&amp;zoom=6&amp;size=700x700&amp;maptype=hybrid&amp;sensor=false&amp;language=german';\n\n$mapsname3='&amp;path=color:0x0000ff|weight:5|'.$latjena.','.$longjena.'|'.$latitude.','.$longitude;\n\n$mapsname=$mapsname1.$mapsname2.$mapsname3;\necho '&lt;img width=\"700\" height=\"700\" src=\"'.$mapsname.'\"&gt;&lt;\/img&gt;';\n$entfernung_ganzzahl=ceil(distance($latjena,$longjena,$latitude,$longitude,false));<\/pre>\n<pre>\/* Entfernung ermitteln und aufrunden*\/\necho '&lt;br&gt;Die Entfernung (Luftlinie) von '.$address.' nach Jena betr\u00e4gt '.$entfernung_ganzzahl.' km.';<\/pre>\n<pre>\/* Entfernung von Jena zur eigegebenen Stadt *\/\n\necho '&lt;br clear=\"all\"\/&gt;&lt;br clear=\"all\"\/&gt; neue Adresse eingeben:<\/pre>\n<pre>&lt;form action=\"index.php\" method=\"post\"&gt;&lt;input type=\"text\" name=\"adress\" \/&gt;&lt;p&gt;<\/pre>\n<pre>&lt;input type=\"submit\" \/&gt;&lt;\/p&gt;&lt;\/form&gt;';\n?&gt;<\/pre>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Um schnell eine Luftliniendistanz zwischen zwei Orten zu erhalten, ben\u00f6tigt man die Koordinaten der entsprechenden Orte. Diese lassen sich mit der Google-Maps Api erfragen. Dazu sendet man mit php und dem Befehl: file_get_contents() eine Anfrage an den Maps Server. Vor Benutzung die Richtlinien von google-maps beachten! &lt;?php function distance($lat1, $lng1, $lat2, $lng2, $miles = true) [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-190","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/markusheinemann.com\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/markusheinemann.com\/wordpress\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/markusheinemann.com\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/markusheinemann.com\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/markusheinemann.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=190"}],"version-history":[{"count":0,"href":"https:\/\/markusheinemann.com\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/190\/revisions"}],"wp:attachment":[{"href":"https:\/\/markusheinemann.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}