Jeg har skrevet et simpelt datoscript i php, der henter dags dato og skriver den ud med danske ugedage og måneder.
Funktionen bygger på den indbyggede dato-funktion i php. Dato-funktionen i php viser naturligvis resultatet på engelsk, derfor må
skifte de engelske dato-betegnelser ud med danske dato-betegnelser.
1 $ugedage = array("Søndag","Mandag","Tirsdag","Onsdag", "Torsdag","Fredag","Lørdag"); 2 $maaneder = array("januar","februar","marts","april","maj", "juni","juli","august","september","oktober", "november","december"); 3 $dato_array = getdate(); 4 echo $ugedage[$dato_array[wday] ] . " d. " ; 5 echo $dato_array[mday] . ". " ; 6 echo $maaneder[($dato_array[mon]-1)] . " "; 7 echo $dato_array[year];
1: Først opretter vi et Array med danske ugedage.
2: Dernæst opretter vi et Array med danske måned navne. Disse to arrays bruger vi senere til at hente de danske navne for henholdsvis ugedag og måned
3: Funktionen getdate() er en standard funktion i php. Den henter mange forskellige dato oplysninger. Disse oplysninger gemmer vi et array, som vi kalder $dato_array.
For at hente data ud af vores array fodrer vi det med nogle "parametre" (se højre spalte)
4: Så skriver vi ud: $dato_array[wday] henter et tal mellem 0-6. Nemlig nummeret på ugedagen.
Dette nummer bruger vi til at hente det danske ugenavn i vores array med ugedage.
5: Dagen(datoen) i måneden hentes. Datoen er et tal, så det skal ikke oversættes til dansk. ;)
6: Måned hentes i $dato_array på præcis samme måde som ugedagen blev hentet i linie 4. Dog trækker vi en fra, da "mon" returnere tallen 1-12,
og alså ikke starter ved 0, som et php array normalt gør.
7: Til sidst henter vi årstallet
Ind imellem tilføjer vi de små tegn som f.eks. mellemrum og "d." for at formatere datoen, som vi ønsker det. "Tirsdag d. 29. juli 2008"
Her er dags dato, udskrevet og formateret med php:
Onsdag 11. december 2024
Her er de "parametre" der henter data ud af arrayet.
Bemærk at de tal, man umiddelbart bruger i dato'er (dato og måned) starter ved 1, hvor de andre værdier starter ved 0.