Die Koordinaten kommen in folgender Form aus der Datenbank:
53.52175
8.10157
Die Funktion getDistance():
PHP-Code:
function getDistance($koord)
{
if (!is_array($koord))
{
return false;
}
$ent = 0;
$welt = 6378.137; // Erdradius, ca. Angabe
foreach($koord as $key => $fetch)
{
if (isset($koord[$key + 1]))
{
$erste_breite = $koord[$key][0]; // lat
$erste_laenge = $koord[$key][1]; // lon
$erste_breite_rad = deg2rad($erste_breite);
$erste_laenge_rad = deg2rad($erste_laenge);
$zweite_breite = $koord[$key + 1][0]; // lat
$zweite_laenge = $koord[$key + 1][1]; // lon
$zweite_breite_rad = deg2rad($zweite_breite);
$zweite_laenge_rad = deg2rad($zweite_laenge);
$dis = acos(
(sin($erste_breite_rad) * sin($zweite_breite_rad)) +
(cos($erste_breite_rad) * cos($zweite_breite_rad) *
cos($zweite_laenge_rad - $erste_laenge_rad))) * $welt;
$ent = $ent + $dis;
}
}
$entfernung = $ent * 1000;
return round($entfernung, 5);
}