PHP計算兩點經緯度之間的距離代碼

pdce 9年前發布 | 1K 次閱讀 PHP

以下是對PHP計算2點經緯度之間的距離代碼進行了分析介紹

    <?php
function getDistanceBetweenPointsNew($latitude1, $longitude1, $latitude2, $longitude2) {
$theta = $longitude1 - $longitude2;
$miles = (sin(deg2rad($latitude1)) sin(deg2rad($latitude2))) + (cos(deg2rad($latitude1)) cos(deg2rad($latitude2)) cos(deg2rad($theta)));
$miles = acos($miles);
$miles = rad2deg($miles);
$miles = $miles
60 1.1515;
$feet = $miles
5280;
$yards = $feet / 3;
$kilometers = $miles 1.609344;
$meters = $kilometers
1000;
return compact('miles','feet','yards','kilometers','meters');
}

$point1 = array('lat' => 40.770623, 'long' => -73.964367);  
$point2 = array('lat' => 40.758224, 'long' => -73.917404);  
$distance = getDistanceBetweenPointsNew($point1['lat'], $point1['long'], $point2['lat'], $point2['long']);  
foreach ($distance as $unit => $value) {  
    echo $unit.': '.number_format($value,4).'<br />';  
}  
?>  </pre> 


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