如何使用 Maxmind geolite2 数据库输入城市/州名来获取纬度/经度?
(我已经为 ip 查找安装了 geolite2 php API,但现在我想反过来使用它,可以这么说)
如果有另一种实用的方法在 php 中执行此操作,请告诉我,但我不想为此使用 google 地理编码器 API 或任何其他外部 API。
谢谢你!
简单地说:你不能。API 不仅不提供执行此操作的方法(MaxMind 是一个基于 IP 的地理编码提供商),而且该数据库无法远程接近包含您可能想要查找的每个城市。
要获取其中的几个城市,您可以获取CSV 格式的城市数据库并将表(有两个:“locations”具有城市和州名,而“blocks”具有纬度和经度信息)到您自己的 SQL数据库从那里进行查找。
如果您改变了使用其他 API 的想法,您可能需要查看geocoder-php并选择支持基于地址的地理编码的提供商,这就是您所追求的。