>  기사  >  백엔드 개발  >  PHP计算二点经纬度之间的距离代码

PHP计算二点经纬度之间的距离代码

WBOY
WBOY원래의
2016-06-13 12:21:39930검색

PHP计算2点经纬度之间的距离代码

以下是对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(&#39;miles&#39;,&#39;feet&#39;,&#39;yards&#39;,&#39;kilometers&#39;,&#39;meters&#39;);}$point1 = array(&#39;lat&#39; => 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>';}?>

结果:

miles: 2.6025feet: 13,741.4350yards: 4,580.4783kilometers: 4.1884meters: 4,188.3894


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.