我如何将这些坐标转换为谷歌地图可读的坐标?
问题描述:
我需要以下列格式转换坐标:
Hi guys I need to convert coordinates in the following form:
N42-53.9°
W072-16.2°
INto有点像以下内容:
INto something thats kinda like the following:
-90.7311
0.346944
一个php函数将不胜感激 - 或者只是一个公式也会很好:)
A php function would be greatly appreciated - or just a formula would also be nice enough :)
答
I found an online JS calculator and a PHP solution:
<?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);
}
?>