更多>
最新下载
24小时阅读排行榜
- 1 什么是AJAX以及如何在javascript中实现_怎样与服务器进行异步通信【教程】
- 2 html5播放rtsp怎么投屏_html5rtsp投屏电视方法【扩展】
- 3 css grid布局中隐式网格是怎么产生的_通过自动扩展规则说明
- 4 javascript如何操作JSON数据?_如何进行JSON字符串和对象的相互转换?【教程】
- 5 什么是异步JavaScript_回调函数如何使用【教程】
- 6 c++中如何将字符串转换为整数_c++ string转int方法【详解】
- 7 Golang Web接口返回慢如何排查_Golang接口性能分析方法
- 8 Postman如何测试XML上传接口 Postman发送form-data和raw XML
- 9 mysql安装完成后如何配置事件调度器_mysql任务管理配置
- 10 Three.js/Babylon.js如何加载上传的X3D/Collada格式XML
- 11 什么是mysql锁_mysql锁基础概念说明
- 12 c# 如何写日志 log4net
- 13 php动态网站开发怎样防止重复提交_PHP动态网站防重复提交法【方案】
- 14 css定位与布局的结合_使用position与display优化布局
- 15 C++构造函数怎么写 C++初始化列表与赋值的区别【细节】
更多>
最新教程
-
- Node.js 教程
- 16304 2025-08-28
-
- CSS3 教程
- 1546993 2025-08-27
-
- Rust 教程
- 23428 2025-08-27
-
- Vue 教程
- 25868 2025-08-22
-
- PostgreSQL 教程
- 22367 2025-08-21
-
- Git 教程
- 9318 2025-08-21
下载首页 / 类库下载 / 其它类库
<?php
class GeoHelper
{
/**
* @param int $lat1
* @param int $lon1
* @param int $lat2
* @param int $lon2
* @param string $unit
* @return
*/
public static function distance($lat1, $lon1, $lat2, $lon2, $unit = "K")
{
$theta = $lon1 - $lon2;
$dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2)) + cos(deg2rad($lat1)) * cos(deg2rad
($lat2)) * cos(deg2rad($theta));
$dist = acos($dist);
$dist = rad2deg($dist);
$miles = $dist * 60 * 1.1515;
$unit = strtoupper($unit);
if ($unit == "K") {
return ($miles * 1.609344);
} else
if ($unit == "N") {
return ($miles * 0.8684);
} else { //mi
return $miles;
}
}
/**
*
* @param string $address
* @param string $apikey
* @return array [1]:lat [0]:lng
*/
public static function getLatLng($address, $apikey)
{
$find = array("\\n", "\\r", " ");
$replace = array("", "", "+");
$address = str_replace($find, $replace, $address);
$url = 'http://maps.google.com/maps/geo?q=' . $address . '&key=' . $apikey .
'&sensor=false&output=xml&oe=utf8';
$response = self::xml2array($url);
$coordinates = $response['kml']['Response']['Placemark']['Point']['coordinates'];
if (!empty($coordinates)) {
$point_array = split(",", $coordinates);
return $point_array;
}
}
}计算地图上两点间的距离,使用的是谷歌地图
本站所有资源都是由网友投搞发布,或转载各大下载站,请自行检测软件的完整性!本站所有资源仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您自己承担!如有侵权请联系我们删除下架,联系方式:admin@php.cn
