离我最近的地铁站入口 (离我最近的地铁站)

深圳桑拿 05-12 阅读:62 评论:0
results as $station) {// 获取地铁站入口的位置$entrance1 = $station->geometry->location;$entrance2 = $station->geometry->location;// 获取地铁站的名称$name = $station->name;// 计算地铁站入口与用户地址的距离$distance1 = haversine($entrance1->lat, $entrance1->lng, $address->lat, $address->lng);$distance2 = haversine($entrance2->lat, $entrance2->lng, $address->lat, $address->lng);// 找出距离最近的地铁站入口if ($distance1 < $distance2) {$closestEntrance = $entrance1;} else {$closestEntrance = $entrance2;}// 输出最近的地铁站入口信息echo "
";echo "

$name

";echo "

最近入口位置:

";echo " 离我最近的地铁站入口 (离我最近的地铁站)

$closestEntrance->lat, $closestEntrance->lng

";echo "

距离你的地址:

";echo "

$distance1 米

";echo "
";}}// 计算两个经纬度之间的距离(米)function haversine($lat1, $lon1, $lat2, $lon2) {$R = 6371000; // 地球半径(米)$dLat = deg2rad($lat2 - $lat1);$dLon = deg2rad($lon2 - $lon1);$a = sin($dLat / 2) sin($dLat / 2) + cos(deg2rad($lat1)) cos(deg2rad($lat2)) sin($dLon / 2) sin($dLon / 2);$c = 2 atan2(sqrt($a), sqrt(1 - $a));$distance = $R $c;return $distance;}?>
版权声明

本文仅代表作者观点,不代表深圳桑拿立场。
本文系作者授权发表,未经许可,不得转载。