php - 像饿了么一样利用地图定位计算坐标附近餐厅的这个方式怎么做的呢?
黄舟
黄舟 2017-04-10 16:42:16
[PHP讨论组]

像这种场景,点击地图选一个坐标,就可以定位出附近有多少家外卖餐厅,随意拖动那个小杆杆,就能计算任意一个位置附近是否有餐厅,感觉好高级啊,怎么实现的呢?

说说我的想法:
餐厅在开通的时候有三个字段关乎今后的定位搜索:经度,纬度,配送范围(方圆千米/还是区域,这个怎么定的我还真没想好)

然后利用地图的API,得出选的经纬度,然后怎么样我就不知道了

希望知道的大神给我指点一下,谢谢了!

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(2)
伊谢尔伦

这个数据库要选用一个原生支持geo的,mongodb是一个不错的选择。
另:Mysql 5.7也加入对geo的原生支持
在这个业务里,对经纬度的写入,查询的代码逻辑是最重要的,距离可以通过经纬度进行计算

而后的一大块业务逻辑其实是前端了

虽然你这个问题放到了PHP里,但其实PHP在中间并没有起到太多作用,或者说,实现难点并不是PHP

迷茫

原理是geohash,geohash原理对所有的 poi 建立geo索引,然后用已知坐标搜出来需要的poi,再在地图上展示出来。

简单的话mongodb本身就支持geohash,还有地图提供商也提供这种服务。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号