PHP到Javascript数组和GPS位置

PHP到Javascript数组和GPS位置,php,javascript,geolocation,Php,Javascript,Geolocation,我正在制作一个脚本,希望它主要是PHP,这样以后就不需要Javascript了,但现在我有几件事要做 存储GPS位置并进行比较的最佳方法是什么?我可以将它们存储在一个数据库中(目前使用的是MySQL),然后用一些代码找到附近的人,但我担心这会非常密集,特别是如果数据库中有很多值的话。这应该在服务器上执行,我现在正在使用PHP 我如何获取这些数据,然后在谷歌地图中表示它们?当我已经输入了数据时,我的代码就可以工作了,但是我想从数据库中获取这些数据。在一个谷歌地图视图上放置100个标记来代表全世界的

我正在制作一个脚本,希望它主要是PHP,这样以后就不需要Javascript了,但现在我有几件事要做

  • 存储GPS位置并进行比较的最佳方法是什么?我可以将它们存储在一个数据库中(目前使用的是MySQL),然后用一些代码找到附近的人,但我担心这会非常密集,特别是如果数据库中有很多值的话。这应该在服务器上执行,我现在正在使用PHP

  • 我如何获取这些数据,然后在谷歌地图中表示它们?当我已经输入了数据时,我的代码就可以工作了,但是我想从数据库中获取这些数据。在一个谷歌地图视图上放置100个标记来代表全世界的人,这会不会要求用户太多?还是我应该和某个区域内的人呆在一起?我目前的代码是:

    var people = [ ['Type1', -33.890542, 151.274856],
                   ['Type2', -33.923036, 151.259052],  
                   ['Type2', -34.028249, 151.157507],  
                   ['Type2', -33.80010128657071, 151.28747820854187],  
                   ['Type1', -33.950198, 151.259302]
                 ];
    
    每个“类型”显示不同的图像,因此我需要从数据库中提取类型、lat和long,并将它们放入这个Javascript数组中


  • 我知道这里有一些问题,我对javascript和地图这方面还不熟悉:)

    1。您的第一个问题

    上周我不得不解决类似的问题,我就是这样做的。
    假设我在MySQL数据库中有一些办公室的列表,其中有它们的GPS坐标(
    GPS\u lat
    GPS\u lon
    ),我想根据它们到我当前位置的距离(
    $latitude
    $longtudity
    )对它们进行排序,单位为km

    也许看看这个链接,它帮了我很多。我知道这在SQL中看起来很奇怪。
    $varA
    只是重复两次的公式的一部分。上面链接中的原始公式如下所示:

    dlon = lon2 - lon1
    dlat = lat2 - lat1
    a = (sin(dlat/2))^2 + cos(lat1) * cos(lat2) * (sin(dlon/2))^2
    c = 2 * atan2(sqrt(a), sqrt(1-a)) 
    d = R * c
    

    实际上我一直在用这个,谢谢佩塔。我正在使用它来存储他们的位置(在他们允许的情况下),然后将它映射到网站上的其他人。你可以使用MySQL的空间功能来存储数据:谢谢你,看起来很好。阅读了这个链接,我想我了解了它的工作原理,现在我将尝试实现它。我假设我们将用户的当前位置(gps_lat和gps_lon)与一些可变坐标、$lation和$longtude进行比较?我不太懂最后一点,但我对这种语法不是很了解(是的,你说得对。我更新了帖子,所以它可能更容易理解。
    dlon = lon2 - lon1
    dlat = lat2 - lat1
    a = (sin(dlat/2))^2 + cos(lat1) * cos(lat2) * (sin(dlon/2))^2
    c = 2 * atan2(sqrt(a), sqrt(1-a)) 
    d = R * c