登录  /  注册

当前位置: 首页  >  下载站  >  类库  >  其它类库  >  计算地图上两点间的距离PHP类

计算地图上两点间的距离PHP类

计算地图上两点间的距离PHP类

计算地图上两点间的距离PHP类
分类:   类库下载 / 其它类库 发布时间:  2018-01-02 访问量:  2287
下载量:  93
点击下载
更多>

最新下载

50个优秀经典PHP算法大集合

经典PHP算法,学习优秀的思想 , 开拓思维
2131 2020-03-26

PHPExcel-1.8类库(值得收藏!)

PHPExcel 操作Office Excel 文档的PHP类库
11338 2018-09-26

依赖注入容器的PHP库

依赖注入容器的PHP库
360 2018-01-26

小巧的优化图片的PHP库

小巧的优化图片的PHP库
560 2018-01-26

提取GIF动画帧信息的PHP库

提取GIF动画帧信息的PHP库
245 2018-01-26

面向对象流包装PHP库

面向对象流包装PHP库
232 2018-01-26

远程文件下载php类库

远程文件下载php类库
640 2018-01-25

两表合并成一张新表的php类库

两表合并成一张新表的php类库
362 2018-01-25

静态文件生成的php类库

静态文件生成的php类库
343 2018-01-25

php小型日历类库

php小型日历类库
506 2018-01-25
下载首页 / 类库下载 / 其它类库
<?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

相关推荐

计算地图上两点间的距离PHP类

计算地图上两点间的距离PHP类
其它类库
2018-01-02

php计算地图上两点间的距离的类

php计算地图上两点间的距离的类
百度地图类库
2017-06-09

50个优秀经典PHP算法大集合

经典PHP算法,学习优秀的思想 , 开拓思维
其它类库
2020-03-26

PHPExcel-1.8类库(值得收藏!)

PHPExcel 操作Office Excel 文档的PHP类库
文件处理类库
2018-09-26

依赖注入容器的PHP库

依赖注入容器的PHP库
其它类库
2018-01-26

小巧的优化图片的PHP库

小巧的优化图片的PHP库
其它类库
2018-01-26

提取GIF动画帧信息的PHP库

提取GIF动画帧信息的PHP库
其它类库
2018-01-26

面向对象流包装PHP库

面向对象流包装PHP库
其它类库
2018-01-26

热门下载

关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号