Php Koordinatı Kilometreye çevirme

Php Koordinatı Kilometreye çevirme

Php ile Latitude, Longitude koordinatlarını Kilometre, Mil ve Deniz mili olarak dönüştürmek için aşağıdaki fonksiyonu kullanabilirsiniz.

function distance(float $lat1, float $lon1, float $lat2, float $lon2, string $unit)
{

  if (($lat1 == $lat2) && ($lon1 == $lon2)) {
    return 0;
  }
  $dist = rad2deg(acos(sin(deg2rad($lat1)) * sin(deg2rad($lat2)) + cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($lon1 - $lon2))));
  $miles = $dist * 60 * 1.1515;
  $unit = strtoupper($unit);
  switch ($unit) {
    case 'K':
    case 'k':
      return ($miles * 1.609344);
      break;
    case 'N':
    case 'n':
      return ($miles * 0.8684);
      break;
    default:
      return $miles;
      break;
  }
}

Örnek Kullanım (Kilometre)

echo distance(40.7957034, 29.4226704, 40.8088656, 29.4512179, 'K');

Örnek Kullanım (Mil)

echo distance(32.9697, -96.80322, 29.46786, -98.53506, "M");

Örnek Kullanım (Deniz mili)

echo distance(32.9697, -96.80322, 29.46786, -98.53506, "N");

Comments


Yorum yazın







Tarih: