【发布时间】:2012-11-12 17:56:15
【问题描述】:
我一直在寻找一段代码(最好在 PHP 中),它可以采用纬度、经度和加/减值(以公里为单位)并返回最小和最大纬度和经度。
我似乎找不到任何东西既能用简单的术语解释它的作用,又能考虑到地球“臃肿”的曲率。
谁能帮忙?
【问题讨论】:
我一直在寻找一段代码(最好在 PHP 中),它可以采用纬度、经度和加/减值(以公里为单位)并返回最小和最大纬度和经度。
我似乎找不到任何东西既能用简单的术语解释它的作用,又能考虑到地球“臃肿”的曲率。
谁能帮忙?
【问题讨论】:
这很棘手,因为纬度/经度是一个角度量,而您的半径距离是一个不相容的线性量。
这里有一些解决方法,按照准确度降序和编码简单性升序排列。
我建议不要。 1.
【讨论】:
不知道为什么要在纯 PHP 中执行此操作,但 MySQL 和 MongoDB 支持地理空间索引,这比任何纯 PHP 实现都具有巨大的性能优势。
我个人更喜欢MongoDB 版本,因为它默认安装,您可以轻松搜索
请看
【讨论】:
为了让事情变得更简单,我已经切换到 MongoDB 的系统,目前正在使用 MongoHQ 的 REST API 通过他们的地理 API 访问数据。
【讨论】: