【发布时间】:2011-01-10 09:14:36
【问题描述】:
考虑到距离基地城市 50 公里的半径,我需要找到附近的城市。
我的脚本应该是 PHP... 有没有 API 可以找到它...
请帮帮我...
谢谢...
【问题讨论】:
标签: php google-api city
考虑到距离基地城市 50 公里的半径,我需要找到附近的城市。
我的脚本应该是 PHP... 有没有 API 可以找到它...
请帮帮我...
谢谢...
【问题讨论】:
标签: php google-api city
这是一个很棒的资源:@987654321@
基地城市:纬度:37 纬度:-122
SELECT id, ( 6371 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance FROM markers HAVING distance < 50 ORDER BY distance LIMIT 0 , 20;
与“Tricker”解决方案的原理相同。
【讨论】:
我写了一个计算坐标之间距离的脚本。当你有 2 个坐标时,你可以这样做:
base :
- latitude
- longitude
city :
- latitude
- longititude
你必须传入基本城市的地理坐标,然后你需要发送一个 cURL 到谷歌或雅虎服务器(取决于你想要的地理编码器 api)来获取城市坐标。
现在的问题是您有哪些城市的坐标?如果你没有,你可以购买一个邮政编码区域数据库(然后你可以在你想要的城市之外获得你的坐标)。当你有来自城市的坐标时,你可以运行一个复杂的计算结果距离。之后,您可以查看结果/距离是大于还是小于 50。如果更小,您可以将其作为范围内的城市返回。
这不是你在几分钟内就能完成的事情
【讨论】: