관리 메뉴

웹개발자의 기지개

위도경도 두지점간의 거리 구하기 본문

PHP

위도경도 두지점간의 거리 구하기

http://portfolio.wonpaper.net 2018. 11. 28. 18:33

위도 경도값을 알고 있는 두지점 간의 거리를 알고자 할 때 유용한 함수를 정리해 봤다.


 

function _deg2rad($deg){
 $radians = 0.0;
 $radians = $deg * M_PI/180.0;
 return($radians);
}



function geoDistance($lat1, $lon1, $lat2, $lon2, $unit="k") {
 $theta = $lon1 - $lon2;
 $dist = sin(_deg2rad($lat1)) * sin(_deg2rad($lat2)) + cos(_deg2rad($lat1)) * cos(_deg2rad($lat2)) * cos(_deg2rad($theta));
 $dist = acos($dist);
 $dist = rad2deg($dist);
 $miles = $dist * 60 * 1.1515;
 $unit = strtolower($unit);
 
 if ($unit == "k") {
  return ($miles * 1.609344);
 } else {
  return $miles;
 }
}



위에서 geoDistance() 함수내에 5번째 인수는 km 가 기본값으로 리턴된다. 마일값도 리턴이 가능하다.~

Comments