
使用 php 计算百度 2 个 GPS 坐标距离
/*
* @param lat1 坐标点 1 经度值 lng1 坐标点 1 纬度值 lat2 坐标点 2 经度值 lng2 坐标点 2 纬度值
* @return floot (1.2212) ,4 位小数,单位千米
*/
function GetDistance($lat1, $lng1, $lat2, $lng2){
$pi = 3.1415926535898;
$earth_radius = 6378.137;
$radLat1 = $lat1 * ($pi / 180);
$radLat2 = $lat2 * ($pi / 180);
$a = $radLat1 - $radLat2;
$b = ($lng1 * ($pi / 180)) - ($lng2 * ($pi / 180));
$s = 2 * asin(sqrt(pow(sin($a/2),2) + cos($radLat1)*cos($radLat2)*pow(sin($b/2),2)));
$s = $s * $earth_radius;
$s = round($s * 10000) / 10000;
return $s;
}