PHP 中根據經度和緯度計算距離

jopen 9年前發布 | 888 次閱讀 PHP

這是一個非常有用的距離計算函數,利用緯度和經度計算從 A 地點到 B 地點的距離。該函數可以返回英里,公里,海里三種單位類型的距離。

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

$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 = strtoupper($unit);

if ($unit == "K") { return ($miles 1.609344); } else if ($unit == "N") { return ($miles 0.8684); } else { return $miles; } }

//用法: echo distance(32.9697, -96.80322, 29.46786, -98.53506, "k")." kilometers"; </pre>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!