PHP函数,计算两个经纬度之间的距离

if (!function_exists('long_lat_distance')) {
/**
* @Description 2个经纬度之间的距离(单位:米)
* @param $latitude_from mixed 出发纬度
* @param $longitude_from mixed 出发经度
* @param $latitude_to mixed 终点纬度
* @param $longitude_to mixed 终点经度
* @return float 单位:米
*/
function long_lat_distance($latitude_from, $longitude_from, $latitude_to, $longitude_to)
{
return round(
6378.138 * 2 * asin(
sqrt(
sin(
($latitude_from * M_PI / 180 - $latitude_to * M_PI / 180) / 2
) ** 2
+
cos($latitude_from * M_PI / 180)
* cos($latitude_to * M_PI / 180)
* sin(
($longitude_from * M_PI / 180 - $longitude_to * M_PI / 180) / 2
) ** 2
)
) * 1000
);
}
}