Конвертация DMS в Lat Long в PHP - PullRequest
1 голос
/ 24 октября 2019

Этот код работает для преобразования длинного лата

/ начало лата /

$ txt_lat = "2306.2405, S";

$ latFirst= substr ($ txt_lat, 0,2);

$ getLatMinSec = substr ($ txt_lat, 2,9) .str_split (',') [0];

$ getLatDirection = substr($ txt_lat, 10,11);

$ latSecond = $ getLatMinSec / 60;

$ finalLat = floatval ($ latFirst) + floatval ($ latSecond);

if ($ getLatDirection == "S") {

$finalLat = "-".$finalLat;

} ​​

echo $ finalLat;

/ long start /

$ txt_long = "07235.6583, W";

$ longFirst = substr ($ txt_long, 0,3);

$ getLongMinSecL = substr ($ txt_long, 3,11). str_split (',') [0];

$ getLongDirection = substr ($ txt_long, 11,12);

$ longSecond = $ getLongMinSecL / 60;

$finalLong = floatval ($ longFirst) + floatval ($ longSecond);

if ($ getLongDirection == "W") {

$finalLong = "-".$finalLong;

}

echo $ finalLong;

=========== Вывод ================

"широта": "-23.104008333333"

"долгота": "-72.594305"

...