PHP根据两点间的经纬度计算距离_php技巧

这是一个不错的示例,直接贴代码,首先要知道纬度值、经度值

/**
* @desc 根据两点间的经纬度计算距离
* @param float $lat 纬度值
* @param float $lng 经度值
*/
function getDistance($lat1, $lng1, $lat2, $lng2)
{
$earthRadius = 6367000; //approximate radius of earth in meters 

/*
Convert these degrees to radians
to work with the formula
*/ 

$lat1 = ($lat1 * pi() ) / 180;
$lng1 = ($lng1 * pi() ) / 180; 

$lat2 = ($lat2 * pi() ) / 180;
$lng2 = ($lng2 * pi() ) / 180; 

/*
Using the
Haversine formula 

http://en.wikipedia.org/wiki/Haversine_formula 

calculate the distance
*/ 

$calcLongitude = $lng2 - $lng1;
$calcLatitude = $lat2 - $lat1;
$stepOne = pow(sin($calcLatitude / 2), 2) + cos($lat1) * cos($lat2) * pow(sin($calcLongitude / 2), 2);
$stepTwo = 2 * asin(min(1, sqrt($stepOne)));
$calculatedDistance = $earthRadius * $stepTwo; 

return round($calculatedDistance);
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索经纬度
距离
两点经纬度计算距离、用经纬度计算两点距离、经纬度计算两点间距离、已知两点经纬度求距离、知道两点经纬度求距离,以便于您获取更多的相关知识。

时间: 2024-08-01 18:31:15

PHP根据两点间的经纬度计算距离_php技巧的相关文章

iOS 根据两点经纬度计算距离的示例

根据两点经纬度计算距离方法: - (double)latitudeAndLongitudeWithLon1:(double)lon1 lat1:(double)lat1 lon2:(double)lon2 lat2:(double)lat2{     double er = 6378137; // 6378700.0f;     //ave. radius = 6371.315 (someone said more accurate is 6366.707)     //equatorial r

java 经纬度计算 距离-java 经纬度计算距离 经纬和距离切换

问题描述 java 经纬度计算距离 经纬和距离切换 怎么根据一个点的经纬度查询 以这个点为中心距离为200米以内的在业务系统中做过表示的建筑. 比如 经纬度分别为:113.2759952545166 23.117055306224895,怎么能投计算以这个为中心点的做过标记的200以内的距离的经纬度呢? 在网上查了资料都是计算两个经纬度点的之间的距离,没有这个方圆多少米以内的经纬度算法,曾经也没有接触过,希望做过的朋友给个详细的说明或者给个提示.

SQLSERVER 根据地图经纬度计算距离差示例_MsSql

SQL SERVER 根据地图经纬度计算距离的公式 复制代码 代码如下: go --创建经纬度距离计算函数 CREATEFUNCTION [dbo].[fnGetDistance] --LatBegin 开始经度 --LngBegin 开始维度 (@LatBegin REAL, @LngBegin REAL, @LatEnd REAL, @LngEnd REAL) RETURNSFLOAT AS BEGIN --距离(千米) DECLARE @Distance REAL DECLARE @EAR

Android获取经纬度计算距离介绍

经度指示南北方向,纵向纬度指示东西方向,横向 获取经纬度 使用GPS权限:复制代码 代码如下:<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> Android提供LocationManager和Location,可以方便的获得经纬度.海拔等位置.使用LocationManager来获得位置管理类,从而可以获得历史GPS信息以及位置变

python根据经纬度计算距离示例_python

复制代码 代码如下: /** * 计算两点之间距离 * @param _lat1 - start纬度 * @param _lon1 - start经度 * @param _lat2 - end纬度 * @param _lon2 - end经度 * @return km(四舍五入) */public static double getDistance(double _lat1,double _lon1, double _lat2,double _lon2){ double lat1 = (Math

PHP中UNIX时间戳和日期间的转换与计算实例_php技巧

UNIX时间戳是保存日期和时间的一种紧凑简洁的方法,是大多数UNIX系统中保存当前日期和时间的一种方法,也是在大多数计算机语言中表示日期和时间的一种标准格式.以32位整数表示格林威治标准时间,例如,使用证书11230499325表示当前时间的时间戳.UNIX时间戳是从1970年1月1日零点(UTC/GMT的午夜)开始起到当前时间所经过的秒数.1970年1月1日零点作为所有日期计算的基础,这个日期通常成为UNIX纪元. 因为UNIX时间戳是一个32位的数字格式,所以特别适用于计算机处理,例如计算两

PHP入门教程之日期与时间操作技巧总结(格式化,验证,获取,转换,计算等)_php技巧

本文实例讲述了PHP日期与时间操作技巧.分享给大家供大家参考,具体如下: Demo1.php <?php //验证时间 //checkdate() 1.月份 2.日 3.年 //checkdate() 判断这个日期是否是合法的日期 //不合法的日期,试一试 if(checkdate(7,16,2010)){ echo '这个日期是合法有效的'; }else{ echo '这个日期是非法的.'; } ?> Demo2.php <?php //date -- 格式化一个本地时间/日期 //d

PHP服务器页面间跳转实现方法_php技巧

(注意不是用 header ,js 等方法做的客户端跳转) 复制代码 代码如下: function server_transfer($dest) { global ...; // 把希望在新页面中用到的本页变量或者自定义的全局变量列在这里 include $dest; // 运行新脚本 exit; // 退出本脚本 } 注意: 1. 如果跳转之前输出的任何数据都会在新页面中显示,除非使用 ob_start 缓冲,可以在跳转之前清空,这样就互不影响了. 2. 由于新页面在一个自定义的函数作用域内运

php 页面执行时间计算代码_php技巧

代码如下: 复制代码 代码如下: <? $pagestartime=microtime(); ?> <!--网页内容 start--> 网页内容 ... ... <!--网页内容 end--> <? $pageendtime = microtime(); $starttime = explode(" ",$pagestartime); $endtime = explode(" ",$pageendtime); $totalt