我有一个gps设备输出coordonates,如: 4425.7819N 02607.5766E 。
如何使用PHP将它们转换为正常的纬度和经度?例如的 44.432395,26.125751
答案 0 :(得分:4)
以MinDec格式显示您的GPS设备输出。
请参阅http://en.wikipedia.org/wiki/Geographic_coordinate_conversion下的“从MinDec转换为十进制度数”下的信息。
更新
请参阅我编写的以下函数,以便为您进行转换:
function convert($input)
{
$input = ltrim($input, 0);
$mCount = preg_match('/([0-9]{2})([^NESW]+)(N|E|S|W)/', $input, &$matches);
if($mCount > 0)
{
$deg = intval($matches[1]);
$degMin = floatval($matches[2]) / 60;
$ret = $deg + $degMin;
return ($matches[3] == 'S' || $matches[3] == 'W' ? '-' : '') . $ret;
}
return null;
}
var_dump(convert('4425.7819N'));
var_dump(convert('02607.5766E'));
希望有帮助吗?