gpt4 book ai didi

php - 在没有 15 英里半径的情况下定位最近的 lng/lat 位置的方法?

转载 作者:行者123 更新时间:2023-11-29 04:50:19 25 4
gpt4 key购买 nike

项目:我有一个存储为 lng/lat 的校友家庭地址位置的 MySQL 数据库。我希望能够识别居住在彼此 15 英里半径范围内的 15 名或更多校友组成的群体。

给定 lng/lat,如何选择 15 英里半径内的其他 lng/lat 位置?我已经在 Linux 上安装了来自 PEAR 的 PHP geonames 包。我不清楚我是否可以使用这个包来帮助实现这个功能。它包含半径例程,但它们似乎用于返回 lng/lat 半径内的邮政编码等信息。谢谢!

最佳答案

您需要考虑使用 Haversine Formula .您会发现大量在线示例向您展示如何在 PHP 和 SQL 中实现公式。

谷歌 has a nice example for MySQL :

SELECT id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance 
FROM markers HAVING distance < 25 ORDER BY distance LIMIT 0 , 20;

关于php - 在没有 15 英里半径的情况下定位最近的 lng/lat 位置的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12527541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com