如果我的位置在 2 个坐标之间,则 PHP/JS 结果

Posted

技术标签:

【中文标题】如果我的位置在 2 个坐标之间,则 PHP/JS 结果【英文标题】:PHP/JS Result if my position is between 2 coordinates 【发布时间】:2019-02-22 22:56:07 【问题描述】:

我有一些坐标例如:

A-15.555、25.6565 B-15.631、25.9565 C-16.585、26.2435 ...

我想使用我的位置(通过手机)制作一个脚本。 如果我的位置在每个位置 500 米的半径内,它会显示“您在位置 A 和 B 之间”。

所以如果我在位置 15.604、25.7521,我在 A 和 B 位置之间,脚本会告诉我。

我不知道该怎么做,因为我不是地理定位脚本专家。

非常感谢!

--------编辑----------

--------更新---------

或许应该这样简单:

-我使用 php Geolocation 获取用户的位置。

-我需要制作一个PHP脚本来根据用户的位置搜索最近的两个位置

-显示这两个位置

有可能吗?

【问题讨论】:

您只需要一个简单的二维距离公式。 谢谢@JCode,但我不明白 【参考方案1】:

一种解决方案(不确定是否是您要寻找的)是测量您所在位置与指定点之间的距离。所以你可以这样说:

if (pointA.distance(MyLocation) < 500 distance_units && pointB.distance(MyLocation) < 
   500 distance_units) 
    notify_user

不确定您使用的是哪种编程语言,但也许您可以使用一些已经具有此类功能的方便的实验室。否则,您应该制定一种方法来确定一个地理位置与另一个地理位置之间的距离。

希望这会有所帮助。晚安!

【讨论】:

谢谢,但这不是我需要的。如果用户的位置在两个位置的半径内,我想使用 PHP 来显示一些东西。【参考方案2】:

我会使用 vincenty 公式。它将允许您计算两组坐标之间的距离。 Movable Type 有执行此操作的 javascript 源代码,它返回以米为单位的距离。请记住,作者使用 toRadians() 和 toDegrees() 方法扩展了 JavaScript 数字对象。你也必须这样做。我之前在生产应用中使用过这段代码,效果很好。

【讨论】:

谢谢,但这不是我需要的。如果用户的位置在两个位置的半径内,我想使用 PHP 来显示一些东西。

以上是关于如果我的位置在 2 个坐标之间,则 PHP/JS 结果的主要内容,如果未能解决你的问题,请参考以下文章

“我当前的地理位置”和其他坐标之间的计算

PHP,JS - 位置检测

在MATLAB中知道多个点的位置坐标,怎样求各个点之间的距离?

对haversine公式使用列表推导

201403-2 - 窗口

201403-2 窗口