php计算两个坐标(经度,纬度)之间距离的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php计算两个坐标(经度,纬度)之间距离的方法。分享给大家供大家参考。具体如下:

这里使用php计算两个坐标(经度,纬度)之间的距离,返回结果为米或者千米

function distance($lat1, $lng1, $lat2, $lng2, $miles = true)
{
 $pi80 = M_PI / 180;
 $lat1 *= $pi80;
 $lng1 *= $pi80;
 $lat2 *= $pi80;
 $lng2 *= $pi80;
 $r = 6372.797; // mean radius of Earth in km
 $dlat = $lat2 - $lat1;
 $dlng = $lng2 - $lng1;
 $a = sin($dlat/2)*sin($dlat/2)+cos($lat1)*cos($lat2)*sin($dlng/2)*sin($dlng/2);
 $c = 2 * atan2(sqrt($a), sqrt(1 - $a));
 $km = $r * $c;
 return ($miles ? ($km * 0.621371192) : $km);
}

希望本文所述对大家的php程序设计有所帮助。

相关文章

php逐行读取txt文件写入数组的方法 原创

本文实例讲述了php逐行读取txt文件写入数组的方法。分享给大家供大家参考。具体如下: 假设有user.txt文件如下: user01 user02 user03 user04 us...

PHP小偷程序的设计与实现方法详解

本文实例讲述了PHP小偷程序的设计与实现方法。分享给大家供大家参考,具体如下: 其实自己一直想做一个内涵图片的网站,以前的想法是做一个CMS,然后自己上传一些图片。。 开始真这么做的,没...

php Imagick获取图片RGB颜色值

很多图片站点都会根据用户上传的图片检索出图片的主要颜色值,然后在通过颜色搜索相关的图片。 之前按照网上的方法将图片缩放(或者马赛克)然后遍历每个像素点,然后统计处RGB次数最多的值,这做...

PHP常用排序算法实例小结【基本排序,冒泡排序,快速排序,插入排序】

php三种基础算法:冒泡,插入和快速排序法 $array = array(2,3,5,6,9,8,1); //冒泡排序思想,前后元素比较 function sort_bulldle...

php计算整个目录大小的方法

本文实例讲述了php计算整个目录大小的方法。分享给大家供大家参考。具体实现方法如下: /** * Calculate the full size of a directory *...