本文介绍了PHP:以度,分钟和秒为单位设置纬度和经度的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我该如何转换:

26.72773551940918

变成这样:

22°12'42"N

这里的诀窍是,坐标实际上是纬度和经度,我只需要正确设置其格式即可.

The trick here is that the coordinates are, actually Latitude and Longitude, I just need to format them correctly.

推荐答案

您可以在此处

<?php

function DMStoDEC($deg,$min,$sec)
{

// Converts DMS ( Degrees / minutes / seconds )
// to decimal format longitude / latitude

    return $deg+((($min*60)+($sec))/3600);
}

function DECtoDMS($dec)
{

// Converts decimal longitude / latitude to DMS
// ( Degrees / minutes / seconds )

// This is the piece of code which may appear to
// be inefficient, but to avoid issues with floating
// point math we extract the integer part and the float
// part by using a string function.

    $vars = explode(".",$dec);
    $deg = $vars[0];
    $tempma = "0.".$vars[1];

    $tempma = $tempma * 3600;
    $min = floor($tempma / 60);
    $sec = $tempma - ($min*60);

    return array("deg"=>$deg,"min"=>$min,"sec"=>$sec);
}

?>

这篇关于PHP:以度,分钟和秒为单位设置纬度和经度的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-16 17:21
查看更多