如何解决Laravel Eloquent-根据纬度/经度半径获取结果
Place
我需要像| id | name | lat | lon |
|----|-------|-----------|-------------|
| 1 | hotel | 33.755787 | -116.359998 |
| 2 | shop | 44.968046 | -94.420307 |
| 3 | park | 44.333304 | -91.493768 |
之类的东西或一些准确的纬度/经度,这样我才能建立这样的查询:
Place::whereRadius(100)->get()
当前,我的方法是获取Place::whereBetween('lat',latitudes)->whereBetween('lon',longitude)->get();
圆的纬度/经度点,这与我在前端通过radius
进行的期望纬度/经度点不同,并获得了纬度/经度坐标数组像这样:
turf.js
我的下一步是计算上述接收圆的区域内可能的最大和最小点,但是对于较大的数据集或较大的圆,即使在较小的数据集中,也无法保证准确的结果。
编辑我正在寻找Laravel /雄辩的方法。所建议的基于原始MysqL的半径在技术上可以正常工作,但与我在问题中所要求的不完全相同
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。