我想整理一个PHP脚本来解析城市名称(不需要其他任何东西),只有一个国家(IRAN)具有良好的分辨率。由于我必须多次查询数据库,因此最好通过可下载的本地版本。 我已经阅读了stackoverflow上的大部分帖子,因为现在我已经测试了这些:
任何好主意都会非常感激。
答案 0 :(得分:4)
这是一个艰难的,很难做到可靠。我过去曾经给过它,它就是这样的
付费的服务可以很快为您做到这一点。可能需要很长时间才能获得仍然不可靠的工作,因为您根本没有数据。我会认真考虑http://www.maxmind.com/en/city_per - 除非当然这是一个完全没有商业化的项目而且$是不是否。
如果你可以从IP表获得lat和long,即使没有城市数据,那么你可能想要使用这样的东西来检查最近的城市Javascript是一个选项 - Finding nearest listed (array?) city from known location。
浏览器共享位置功能怎么样?
答案 1 :(得分:0)
如果基于浏览器的解决方案适用于您的用例,您可能需要查看MaxMind's GeoIP2 JavaScript API。它首先尝试使用HTML5地理定位来定位用户,如果失败或不准确,它将恢复为MaxMind的GeoIP2 City数据(不是GeoLite)。 MaxMind提供免费归因版本。
答案 2 :(得分:0)
有时我们需要使用本地Geo-IP数据库而不是Web服务来实现特定目的。这是我的经历: 我下载了数据库表单https://db-ip.com。我经常搜索,最后我发现这个更可靠。但还有两个问题:
所以我开发了一个简单的.NET应用来解决这些问题。 该解决方案可以从这里下载:https://github.com/atoosi/IP2Location-Database-Luncher