当其他人按国家或城市搜索时,我想根据位置(纬度/经度)选择照片。 例如,照片的位置是 12.127, 42.127 -> 请求是“旧金山” -> 选择该区域内的点(Instagram 就是一个很好的例子,其中照片链接到城市 + 国家/地区)。
现在我正在寻找使用多边形来根据城市/国家查找位置。但是,我不确定如何在数据库中使用和存储多边形。
这是我的视觉步骤(不确定技术上是否正确)
- 根据城市/国家/地区获取多边形/区域
table1
- 从
table2
查找积分table1
的多边形内部
如果这些步骤正确,我找不到任何资源来获取城市或国家/地区的多边形。
请提供一些示例+表格结构以及如何实现的说明。
最佳答案
Mysql已经支持geospatial已经有一段时间了。数据类型和函数。
您可以将城市或任何其他地方存储为多边形,并且可以使用 Within() or Contains() 之一函数(每个有 3 个)来测试某个点是否在城市内。
Mysql 文档包含大量有关数据类型和函数的示例。您还可以在互联网上找到包含各个都市区坐标的免费和非免费资源。推荐场外资源与 SO 无关,因此我不会提出任何建议。
关于php - 使用空间多边形(边界)查找点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36830216/