Come convertire da gradi decimali a sessagesimali in php
Per trasformare da gradi sessadecimali a gradi sessagesimali ( gradi, minuti, secondi ) nel linguaggio Php, occorre creare un'apposita funzione.
function ddtodms($dec)
{
// Converts decimal format to DMS ( Degrees / minutes / seconds )
$vars = explode(".",$dec);
$deg = $vars[0];
$temp = "0.".$vars[1];
$temp = $temp * 3600;
$min = floor($temp / 60);
$sec = $temp - ($min*60);
return array("deg"=>$deg,"min"=>$min,"sec"=>$sec);
}
La funzione restituisce un array contenente tre elementi: i gradi, i minuti e i secondi dell'angolo.
Esempio
Dopo aver definito la funzione ddtodmos nel programma, per convertire 75,253° gradi decimali in sessagesimali aprire un'istanza e stampare il risultato.
$z=ddtodms(75.253);
echo($z["deg"]."°".$z["min"]."'".$z["sec"]."''");
L'output del programma è il seguente:
75°15'10.8''