Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从纬度/经度和';半径';_Php_Latitude Longitude - Fatal编程技术网

Php 从纬度/经度和';半径';

Php 从纬度/经度和';半径';,php,latitude-longitude,Php,Latitude Longitude,我一直在寻找一段代码(最好是PHP),它可以获取纬度、经度和正负值(以Km为单位),并返回最小和最大纬度和经度 我似乎找不到任何东西既能用简单的术语解释它的作用,又能考虑到地球“膨胀”的曲率 有人能帮忙吗?不知道为什么要在纯PHP中这样做,但是MySQL和MongoDB支持地理空间索引,这比任何纯PHP实现都有巨大的性能优势 我个人更喜欢MongoDB版本,因为它是默认安装的,您可以通过 接近 半径 盒子 多边形 距离 请看 这很棘手,因为纬度/经度是一个角度量,而半径距离是一个不兼容

我一直在寻找一段代码(最好是PHP),它可以获取纬度、经度和正负值(以Km为单位),并返回最小和最大纬度和经度

我似乎找不到任何东西既能用简单的术语解释它的作用,又能考虑到地球“膨胀”的曲率


有人能帮忙吗?

不知道为什么要在纯PHP中这样做,但是
MySQL
MongoDB
支持地理空间索引,这比任何纯PHP实现都有巨大的性能优势

我个人更喜欢
MongoDB
版本,因为它是默认安装的,您可以通过

  • 接近
  • 半径
  • 盒子
  • 多边形
  • 距离
请看


这很棘手,因为纬度/经度是一个角度量,而半径距离是一个不兼容的线性量

这里有一些方法可以解决这个问题,从精确性的降低到编码的简单性的提高

  • 使用投影库首先在投影坐标(x,y)中进行计算,然后重新投影回(lat,lon)。有一个备受推崇的php端口,我看到它也有一个投影库
  • 用带有WGS84参数的椭球近似地球。 请参阅的公认答案
  • 用球面近似地球并使用球面三角法。 请参阅的公认答案
  • 对您感兴趣的领域使用简单的近似换算系数比例。 请参阅的公认答案
    我推荐一号

    为了让事情变得更简单,我已经切换到MongoDB的系统,目前正在使用MongoHQ的REST API通过他们的地理API访问数据。

    我正在使用CouchDB和Map/Reduce。有没有类似的方法来实现它呢?不是默认的,但是你也可以使用Google刚刚找到的Geocooch,这就是事情变得复杂的地方!我正在使用Cloudant,它为我提供CouchDB。所以,我已经找到并设置了一个MongoDB服务,你知道有什么好的PHP库可以让我与这个服务交互吗?(我使用的是MongoHQ)您不需要MongoHQ查看并下载默认驱动器请参见以下问题: