本文实例讲述了PHP计算当前坐标3公里内4个角落的最大最小经纬度的方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
//$lng 、$lat 经纬度
$half = 6371;
$distance = 3; //3公里
$dlng = 2 * asin(sin( $distance / (2 * $half )) / cos ( deg2rad ( $lat )));
$dlng = rad2deg( $dlng );
$dlat = $distance / $half ;
$dlat = rad2deg( $dlat );
$fourpoint = array (
'left-top' => array ( 'lat' => $lat + $dlat , 'lng' => $lng - $dlng ),
'right-top' => array ( 'lat' => $lat + $dlat , 'lng' => $lng + $dlng ),
'left-bottom' => array ( 'lat' => $lat - $dlat , 'lng' => $lng - $dlng ),
'right-bottom' => array ( 'lat' => $lat - $dlat , 'lng' => $lng + $dlng )
);
|
希望本文所述对大家PHP程序设计有所帮助。