Martin: Datum aus Kalenderwoche kriegen

Hallo!

Hab ein Problem.

Wer weiß, wie man das Datum des 1. Tages einer Kalenderwoche rauskriegen kann? Z.B. das Jahr 2002, KW 20 ?

Vielen Dank für eure Tips!!!

Martin

  1. Hab ein Problem.

    Wer weiß, wie man das Datum des 1. Tages einer Kalenderwoche rauskriegen kann? Z.B. das Jahr 2002, KW 20 ?

    Dazu müsste man erstmal wissen, wann die erste Kalenderwoche eine Jahres  anfängt, von da ab 20*7 Tage dazuzählen und diesen Jahrestag dann entsprechend durch die Monate teilen, um auf ein Datum zu kommen.

    Über den Umweg der Berechnung der Kalenderwoche unter http://www.salesianer.de/util/kalwoch.html oder http://www.microsoft.com/intlKB/germany/support/kb/d33/d33405.htm  müsste man eigentlich irgendwie auf die Lösung kommen.

    Viel Spaß beim Tüfteln :)

    Gruß,
      soenk.e

    1. Hallo!

      Habe des Rätsels Lösung:

      Als Erklärung seht euch dieses Beispiel an:

      <?
      $KW="24";
      $jahr="2002";

      $jahresbeginn=mktime(0,0,0,1,1,$jahr);
      $anfangstage=date("w",$jahresbeginn-1)*86400;
      $datum=$jahresbeginn+(($KW-1)*86400*7)-$anfangstage;
      print date("d.m.y",$datum);

      ?>

      Hab ich selbst geschireben *stolz* ! ;-)

      Martin

  2. Wer weiß, wie man das Datum des 1. Tages einer Kalenderwoche rauskriegen kann? Z.B. das Jahr 2002, KW 20 ?

    Moin,
    hier>>> http://www.galileocomputing.de/openbook/php4/kapd.htm#Xxx30335

    wird beschrieben, wie man ausrechnen kann, auf welches Datum Ostern fällt. Vielleicht hilft Dir der Artikel weiter und Du kannst das php-script für Deine Zwecke ändern.
    Gruß
    CPG

    1. Hallo,

      wird beschrieben, wie man ausrechnen kann, auf welches Datum Ostern fällt.

      Man kann's ja auch kompliziert machen. Warum nicht per
      http://www.php3.de/manual/de/function.easter-date.php
      http://www.php3.de/manual/de/function.easter-days.php
      Und so eine Seite soll dann wirklich hilfreiche Tipps geben???

      Grüße aus Würzburg
      Julian

      1. Und so eine Seite soll dann wirklich hilfreiche Tipps geben???

        Grüße aus Würzburg
        Julian

        ... war nur als Hinweis gedacht, weil es dort auch um die Datumsproblematik geht.  Oft ist man in der Lage, etwas davon abzuleiten.
        also - nichts für ungut!
        Gruß aus dem sonnigen Norden
        CPG

  3. Hallo Martin,

    mich hat das Problem auch interessiert (war glaub ich schon mal da) und hab's versucht (keien Testumgebung hier, daher ungetestet):

    $zeit = time();
    setlocale ( "LC_TIME", "de_DE" );
    $KW = strftime ( "%V", $zeit );
    $wt = strftime ( "%a", $zeit );
    if ($wt == "Mo")
        $firstday = $zeit;
    elseif ($wt == "Di")
        $firstday = $zeit - (1*24*60);
    elseif ($wt == "Mi")
        $firstday = $zeit - (2*24*60);
    elseif ($wt == "Do")
        $firstday = $zeit - (3*24*60);
    elseif ($wt == "Fr")
        $firstday = $zeit - (4*24*60);
    elseif ($wt == "Sa")
        $firstday = $zeit - (5*24*60);
    else
        $firstday = $zeit - (6*24*60);

    echo "Erster Tag der $KW. Woche ist/war der ".strftime ( "

    %m/%d/%y", $firstday );

    Grüße aus Würzburg
    Julian