计算两个邮政编码之间的距离

时间:2013-01-11 22:35:13

标签: php mysql geocoding distance

我想知道如何计算两个邮政编码之间的距离。这是我希望的设置,让我给你一个场景。

用户登录我的网站(他们提供了详细信息,他们的邮政编码就是其中之一)。该数据存储在users表中。

我有另一张表格,其中包含locations的详细信息。我想显示最接近用户的位置(和距离)。

我知道可以使用某些方法,例如:

将邮政编码转换为long-lat并使用内置方法计算距离,我认为Google提供免费服务。但我不知道我将如何实现这样的事情。我看过的所有教程看起来都太复杂了,暂时我想要一个非常粗糙和简单的解决方案,我可以构建它,更重要的是学习!

在数据的基本输入/输出方面,我对PHP和MySQL非常熟悉。但我不确定处理用户数据信息以及“业务”位置的最佳方式。

任何建议,评论都将不胜感激。

2 个答案:

答案 0 :(得分:1)

如果您是美国公司,则此API应满足您的需求:https://www.zipcodeapi.com

专门用于查找两个邮政编码之间的距离,告诉您长途邮政编码,找到相对于某个地点的所有拉链等。

答案 1 :(得分:0)

  1. 从条例调查中获取邮政编码northings eastings数据(在您的网页上获得免费信用)
  2. 2计算距离相应的csv平面文件的距离(M.csv包含所有曼彻斯特邮政编码以及北方和东方)。

    1. 距离是sqrt((n1-n2)** 2 +(e1-e2)** 2) - 请原谅我的堡垒

    2. 如果它很慢,你想要一个近似的距离创建一个小的前半部分邮编平均数据库,所以你正在查找M20而不是M20 3nb。

    3. 5 NB谷歌不喜欢你在谷歌地图之外使用他们的邮政编码apis。

      1. 我想知道一个算法,所以对于短距离,如果你正在寻找靠近邮政编码的地方,你只需要搜索M个邮政编码以获得一个M邮政编码(也许是附近的邮政区域,如SK,OL,如果你有相邻邮政编码区域表)。
      2. 7任何人进一步采取这种做法?