View: Distance between two points (given the latitude/longitude of those points) in PHP

  1. 1 year ago by spirit
    1. function distance($lat1, $lon1, $lat2, $lon2, $unit) {
    2.  
    3.   $theta = $lon1 - $lon2;
    4.   $dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2))cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta));
    5.   $dist = acos($dist);
    6.   $dist = rad2deg($dist);
    7.   $miles = $dist * 60 * 1.1515;
    8.   $unit = strtoupper($unit);
    9.  
    10.   if ($unit == "K") {
    11.     return ($miles * 1.609344);
    12.   } else if ($unit == "N") {
    13.       return ($miles * 0.8684);
    14.     } else {
    15.         return $miles;
    16.       }
    17. }
    18.  
    19. echo distance(32.9697, -96.80322, 29.46786, -98.53506, "m") . " miles<br>";
    20. echo distance(32.9697, -96.80322, 29.46786, -98.53506, "k") . " kilometers<br>";
    21. echo distance(32.9697, -96.80322, 29.46786, -98.53506, "n") . " nautical miles<br>";
    Paste this in your website: <script type="text/javascript" src="http://www.posteet.com/embed/1554"></script>

0 comment about "Distance between two points (given the latitude/longitude of those points) in PHP"