PHP根据两点间的坐标计算距离

xiaoxiao2021-02-28  41

<?php /** *@desc根据两点间的经纬度计算距离 *@paramfloat $lat纬度值 *@paramfloat $lng经度值 */ functiongetDistance($lat1,$lng1,$lat2,$lng2) { $earthRadius=6367000;//approximate radius of earth in meters /* Convert these degrees to radians to work with the formula */ $lat1=($lat1* pi()) / 180; $lng1=($lng1* pi()) / 180; $lat2=($lat2* pi()) / 180; $lng2=($lng2* pi()) / 180; /* Using the Haversine formula http://en.wikipedia.org/wiki/Haversine_formula calculate the distance */ $calcLongitude=$lng2-$lng1; $calcLatitude=$lat2-$lat1; $stepOne= pow(sin($calcLatitude/2),2) + cos($lat1) * cos($lat2) * pow(sin($calcLongitude/2),2); $stepTwo=2* asin(min(1, sqrt($stepOne))); $calculatedDistance=$earthRadius*$stepTwo; returnround($calculatedDistance); } ?>
转载请注明原文地址: https://www.6miu.com/read-82122.html

最新回复(0)