Breddegrad og længdegrad kan skrives i en række forskellige formater. At arbejde med data i et program , kan det være nødvendigt at ekstrahere det fra en tekststreng og konvertere den til et mere brugbart format . PHP understøtter regulære udtryk , som giver en alsidig måde at finde specifikke data, selv når der skrives på en række forskellige måder . Efter breddegrad og længdegrad er udvundet , kan du konvertere dem til decimal format med en simpel formel. Instruktioner
1
Initialiser den variabel, der vil indeholde breddegrad eller længdegrad streng i grader - minutter -sekunder format ( DMS) . Indtast f.eks : Hej
$ DMS = " 45:23:14.33 W "
2
Skriv et regulært udtryk mønster for parsing dine DMS streng. Følgende regulære udtryk accepterer koloner eller standard notation med symboler for grader, minutter og sekunder. Rum kan benyttes mellem værdier og decimaler er frivillige for de sekunder. Imidlertid er et bogstav, der angiver halvkugle ( N, S , E eller W ), der kræves ved afslutningen af strengen :
$ mønster =
3
Brug " preg_match " funktion for at oprette en række af de parsede data. Skriv f.eks : Hej
preg_match ( $ pattern , $ DMS , $ matches ),
4
Beregn decimal værdi på breddegrad eller længdegrad og tildele den til en variabel. En grad er lig med 60 minutter eller 3600 sekunder . Skriv f.eks : Hej
$ decimal = $ matches [' grader '] + $ kampe [' minutter ] /60 + $ matches [' sekunder '] /3600 ,
5 < p> negere værdi, hvis koordinat er i den sydlige eller vestlige halvkugle. Den returnerede værdi er den decimal format på breddegrad eller længdegrad . Skriv f.eks : Hej
if ($ matches [' halvkugle '] == 'S'