gpt4 book ai didi

php - 从已知位置查找最近的列出(数组?)城市

转载 作者:行者123 更新时间:2023-11-28 20:42:34 30 4
gpt4 key购买 nike

我希望将 HTML5 地理定位功能集成到网站中。我遇到的问题是在选定的列表中获取最近的城市/城镇。该网站仅在一定数量的城镇和引用中受支持/营销,因此浏览器可以找到其位置并选择最近的城镇或城市。听起来很简单,但我能想到的是“找到最近的”。

我发现一个线程可以帮助我完成从浏览器获取经度/纬度并将其转换为城镇/城市名称的过程,但这无助于找到最近的列出的名称:Reverse Geocoding With Google Map API And PHP To Get Nearest Location Using Lat,Long coordinates

是否有任何 API(最好在 Google 中)可以找到最近的列出位置?我查了一下,没有找到任何类似的东西。

最佳答案

您可以使用 Haversine 查找最近的城市公式。以下函数用于计算地理坐标与数组坐标之间的距离

function deg2rad(degrees){
radians = degrees * (Math.PI/180);
return radians;
}

function Haversine(lat1,lon1,lat2,lon2) {
deltaLat = lat2 - lat1 ;
deltaLon = lon2 - lon1 ;
earthRadius = 3959; // in miles 6371 in meters.
alpha = deltaLat/2;
beta = deltaLon/2;
a = Math.sin(deg2rad(alpha)) * Math.sin(deg2rad(alpha)) + Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) * Math.sin(deg2rad(beta)) * Math.sin(deg2rad(beta)) ;
c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
distance = earthRadius * c;
return distance.toFixed(2);
}

关于php - 从已知位置查找最近的列出(数组?)城市,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14111734/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com