|
| 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
| |
|
|