Wochentags script...

  • Wochentags script...

    Hallo,

    ich versuch schon die ganze zeit, das Script dazu zu bewegen, das es mir den Wochentag ausgiebt...

    Quellcode

    1. <?
    2. function wochentag($tag)
    3. {
    4. switch ($tag)
    5. {
    6. case 0:
    7. $wtag="Sonntag";break;
    8. case 1:
    9. $wtag="Montag";break;
    10. case 2:
    11. $wtag="Dienstag";break;
    12. case 3:
    13. $wtag="Mittwoch";break;
    14. case 4:
    15. $wtag="Donnerstag";break;
    16. case 5:
    17. $wtag="Freitag";break;
    18. case 6:
    19. $wtag="Samstag";break;
    20. }
    21. return $wtag;
    22. }
    23. ?>
    24. </head>
    25. <body>
    26. <?
    27. $zeit=mktime("0","0","0",$row->datum);//Umrechnung ins Zeitformat
    28. $wtag=strftime("%w",$zeit); // Wochentag als Zahl: 0=Sonntag
    29. $wtag=wochentag($wtag); //Funktionsaufruf
    30. echo $wtag;
    31. ?>
    32. </body>
    33. </html>
    Alles anzeigen


    nur klappt es nicht so wirklich...

    "$row->datum ist der 20.11.1992" und zeigt mir immer Donnerstags, auch wenn ich das Datum änder auf 5.3.2007...

    greets
  • Musst dir die Signatur nochmal anschauen:
    int mktime ( [int Stunde [, int Minute [, int Sekunde [, int Monat [, int Tag [, int Jahr ]]]]]] )

    Also Kein String als dd.mm.yyyy

    Am besten du zerlegst das Datum mit preg_match()

    Quellcode

    1. $wochentage = array('So','Mo','Di','Mi','Do','Fr','Sa');
    2. preg_match('/^(\d{2})\.(\d{2})\.(\d{4})$/', $row->datum, $d);
    3. $zeit=mktime(0,0,0,$d[2], $d[1], $d[3]);
    4. echo $wochentage[strftime("%w",$zeit)];