Avatar billede soltveit Nybegynder
27. marts 2002 - 00:22 Der er 3 kommentarer og
1 løsning

datoer i en bestemt uge

Findes der en funktioner der kan returnere et datointerval ud fra et uge nummer?

f.eks. hvis man har uge 13, skal funktionen retunere 25/03, 26/03.. 31/03
Avatar billede jakoba Nybegynder
27. marts 2002 - 00:31 #1
ikke predefineret såvidt jeg ved. du må lave dem selv.

Den danske regel er:
1) ugen går fra mandag til søndag.
2) uge nr 1 er den uge der indeholder årets første torsdag.

så nogen gange starter uge1 før nytår, andre gange starter den først efter nytår.

mvh JakobA
Avatar billede tipsen Nybegynder
27. marts 2002 - 01:53 #2
Skal det altid være fra det pågældende år?
Avatar billede tipsen Nybegynder
27. marts 2002 - 02:44 #3
Hvis JakobA's danske regler er korrekte, burde følgende fungere:

(Funktionen giver dig datoen for den første dag i den angivne uge - så kan du nok godt finde ud af, at lægge 6 dage til for at finde slutdatoen!)

function datointerval($ugenr, $aar) {
    $ugedag = date("w", mktime(0,0,0,1,1,$aar));
    switch ($ugedag) {
        case 5:
            $deltaday = 3;
            break;
        case 6:
            $deltaday = 2;
            break;
        case 0:
            $deltaday = 1;
            break;
        case 1:
            $deltaday = 0;
            break;
        case 2:
            $deltaday = -1;
            break;
        case 3:
            $deltaday = -2;
            break;
        case 4:
            $deltaday = -3;
            break;
    }
return mktime(0,0,0,1,1+$deltaday+7*($ugenr-1),$aar);
}

$ugestart = datointerval(13,2002);

echo date("r", $ugestart);
Avatar billede soltveit Nybegynder
27. marts 2002 - 22:57 #4
cool, tak for det
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester