/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Oversæt dato til dansk
Fra : Lars Justesen


Dato : 01-05-03 09:06

på et par sider skrevet på dansk skal der vises dato.
jeg bruger:


$dato = strftime("%d %B %Y");

men der får jeg en engelsk dato

hvordan får man det lavet om til dansk?


--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Dennis T. Holm (01-05-2003)
Kommentar
Fra : Dennis T. Holm


Dato : 01-05-03 09:12


> $dato = strftime("%d %B %Y");
> men der får jeg en engelsk dato
> hvordan får man det lavet om til dansk?

Som jeg ser den måde du har lavet din strftime på så burde du da få det
danske datoformat ud .. bortset fra at du måske får måneden skrevet på
engelsk...

Tjek evt. herunder for at se hvordan du trækker datoen ud på forskellige
måder..

MVH Dennis T. HOlm

%a - abbreviated weekday name according to the current locale
%A - full weekday name according to the current locale
%b - abbreviated month name according to the current locale
%B - full month name according to the current locale
%c - preferred date and time representation for the current locale
%C - century number (the year divided by 100 and truncated to an integer,
range 00 to 99)
%d - day of the month as a decimal number (range 01 to 31)
%D - same as %m/%d/%y
%e - day of the month as a decimal number, a single digit is preceded by a
space (range ' 1' to '31')
%g - like %G, but without the century.
%G - The 4-digit year corresponding to the ISO week number (see %V). This
has the same format and value as %Y, except that if the ISO week number
belongs to the previous or next year, that year is used instead.
%h - same as %b
%H - hour as a decimal number using a 24-hour clock (range 00 to 23)
%I - hour as a decimal number using a 12-hour clock (range 01 to 12)
%j - day of the year as a decimal number (range 001 to 366)
%m - month as a decimal number (range 01 to 12)
%M - minute as a decimal number
%n - newline character
%p - either `am' or `pm' according to the given time value, or the
corresponding strings for the current locale
%r - time in a.m. and p.m. notation
%R - time in 24 hour notation
%S - second as a decimal number
%t - tab character
%T - current time, equal to %H:%M:%S
%u - weekday as a decimal number [1,7], with 1 representing Monday



Lars Justesen (01-05-2003)
Kommentar
Fra : Lars Justesen


Dato : 01-05-03 09:43

Dennis T. Holm wrote in dk.edb.internet.webdesign.serverside.php:
> > $dato = strftime("%d %B %Y");
> > men der får jeg en engelsk dato
> > hvordan får man det lavet om til dansk?
>
> Som jeg ser den måde du har lavet din strftime på så burde du da få det
> danske datoformat ud .. bortset fra at du måske får måneden skrevet på
> engelsk...

Nemlig.. der kommer til at stå: 01 may 2003
Hvordan dælen får man det på dansk?

mvh

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jonas Koch Bentzen (01-05-2003)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 01-05-03 09:23

Lars Justesen wrote:
>
> $dato = strftime("%d %B %Y");
>
> men der får jeg en engelsk dato
>
> hvordan får man det lavet om til dansk?

Brug setlocale() først.


Lars Justesen (01-05-2003)
Kommentar
Fra : Lars Justesen


Dato : 01-05-03 09:41

>
> Brug setlocale() først.
>
Hvad skal der stå i funktionen?

setlocale (LC_ALL, 'dk_DK'); ?? eller hvad?

Jeg er rimelig ny i det her så hvis jeg spørger lidt dumt så....


mvh

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Dennis T. Holm (01-05-2003)
Kommentar
Fra : Dennis T. Holm


Dato : 01-05-03 09:50


> Hvad skal der stå i funktionen?
>
> setlocale (LC_ALL, 'dk_DK'); ?? eller hvad?
>

Der skal stå:
setlocale ("LC_TIME", "da_DK");

Mvh Dennis T. Holm



Lars Justesen (01-05-2003)
Kommentar
Fra : Lars Justesen


Dato : 01-05-03 09:59

Dennis T. Holm wrote in dk.edb.internet.webdesign.serverside.php:
> > Hvad skal der stå i funktionen?
> >
> > setlocale (LC_ALL, 'dk_DK'); ?? eller hvad?
> >
>
> Der skal stå:
> setlocale ("LC_TIME", "da_DK");

Mange tak!

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Lars Justesen (01-05-2003)
Kommentar
Fra : Lars Justesen


Dato : 01-05-03 10:02

Dennis T. Holm wrote in dk.edb.internet.webdesign.serverside.php:
> > Hvad skal der stå i funktionen?
> >
> > setlocale (LC_ALL, 'dk_DK'); ?? eller hvad?
> >
>
> Der skal stå:
> setlocale ("LC_TIME", "da_DK");

Idag står der f.eks 01 maj 2003...
Kan man få der til at stå 1 maj 2003 uden 0'et?

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Dennis T. Holm (01-05-2003)
Kommentar
Fra : Dennis T. Holm


Dato : 01-05-03 10:02


> > Der skal stå:
> > setlocale ("LC_TIME", "da_DK");
>
> Idag står der f.eks 01 maj 2003...
> Kan man få der til at stå 1 maj 2003 uden 0'et?


prøv evt med $dato = strftime("%e %B %Y");

har ikke lige selv prøvet men tror nok det virker :)

Mvh Dennis T. Holm



Jesper Brunholm (01-05-2003)
Kommentar
Fra : Jesper Brunholm


Dato : 01-05-03 21:21

Lars Justesen wrote:
>>>setlocale (LC_ALL, 'dk_DK'); ?? eller hvad?
>>Der skal stå:
>>setlocale ("LC_TIME", "da_DK");

LC_TIME eller LC_ALL afhænger lidt af om du skal bruge
locale-variablerne til andet. (er der - nu da vi har fat i emnet - nogen
der kan argumentere for at det "koster" noget i performance at bruge
LC_ALL isf. LC_TIME)?

> Idag står der f.eks 01 maj 2003...
> Kan man få der til at stå 1 maj 2003 uden 0'et?

det skulle kunne lade sig gøre med %e.

MEN den er ikke installeret som mulighed på alle servere (faktisk har
jeg endnu ikke mødt en server hvor den er )

Jeg plejer så at køre $mdDag=strftime(%d,$dato);
$mdDag=($mdDag+1)-1;
echo $mdDag;

Det lægger en til og trækker en fra, og fjerner derved evt prependede
nuller. Det kan også gøres med en smart stringformat-funktion, men jeg
tvivler på at det kan gøres ret meget hurtigere

mvh

Jesper Brunholm


Mikkel Z. Herold \(M~ (01-05-2003)
Kommentar
Fra : Mikkel Z. Herold \(M~


Dato : 01-05-03 21:45

> det skulle kunne lade sig gøre med %e.
> MEN den er ikke installeret som mulighed på alle servere (faktisk har
> jeg endnu ikke mødt en server hvor den er )

Jeg har endnu ikke mødt en server, som ikke understøtter det... Måske har
jeg bare været heldig.

> Jeg plejer så at køre $mdDag=strftime(%d,$dato);
> $mdDag=($mdDag+1)-1;
> echo $mdDag;

Jeg plejer bare at bruge noget i retning af $dag =
strftime("%e",$timestamp")*1;

Altså ganger tallet med 1. På den måde slipper jeg for det ekstra mellemrum,
som bliver indsat før éncifrede tal med "%e".

Er der i øvrigt nogen god forklaring på dette ekstra mellemrum?

Mvh.

Mikkel


--
"And my sanity scans the horizon"
Sting - The Wild Wild Sea

http://www.mzh.dk



Martin Sveegaard (01-05-2003)
Kommentar
Fra : Martin Sveegaard


Dato : 01-05-03 23:16

On Thu, 1 May 2003 22:44:38 +0200, "Mikkel Z. Herold \(MZH\)"
<mikkel@mzh.NOSPAMdk> wrote:

>> det skulle kunne lade sig gøre med %e.
>> MEN den er ikke installeret som mulighed på alle servere (faktisk har
>> jeg endnu ikke mødt en server hvor den er )

Ja, det er den heller ikke hos mig og for at få det til at spille må
jeg skrive: setlocale (LC_TIME, 'danish');
$dato = strftime("%A %d %B %Y");
= fredag 02 maj 2003
men 0'et kommer jeg ikke af med.
MVH Martin S

Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408946
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste