本文实例讲述了php计算两个坐标(经度,纬度)之间距离的方法。分享给大家供大家参考。具体如下:
这里使用php计算两个坐标(经度,纬度)之间的距离,返回结果为米或者千米
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
function distance( $lat1 , $lng1 , $lat2 , $lng2 , $miles = true) { $pi80 = M_PI / 180; $lat1 *= $pi80 ; $lng1 *= $pi80 ; $lat2 *= $pi80 ; $lng2 *= $pi80 ; $r = 6372.797; // mean radius of Earth in km $dlat = $lat2 - $lat1 ; $dlng = $lng2 - $lng1 ; $a = sin( $dlat /2)*sin( $dlat /2)+ cos ( $lat1 )* cos ( $lat2 )*sin( $dlng /2)*sin( $dlng /2); $c = 2 * atan2 (sqrt( $a ), sqrt(1 - $a )); $km = $r * $c ; return ( $miles ? ( $km * 0.621371192) : $km ); } |
希望本文所述对大家的php程序设计有所帮助。