Björn Poller: Zur Info: Aktuelle Kalenderwoche in Perl berechnen

Hallo Leute,

ich hoffe es verstößt nicht gegen die Regel, nur eine Lösung zu präsentieren, aber ich als Perl-Anfänger habe verzweifelt nach einer Lösung zur Berechnung der aktuellen Kalenderwoche gesucht.

Da ich nicht auf Anhieb was gefunden habe, dachte ich, ich teile meine Erkenntnisse mit anderen Anfängern:

$day_of_year = (localtime(time()))[7];
  $week_of_year = int($day_of_year / 7)+1;
  # +1 ist nötig, da die Kalenderwoche IT-gerecht bei 0 anfängt

Eine Frage stellt sich mir dann aber doch noch:
Fängt die Woche in Perl mit Sonntag oder Montag an? Ich habe da doch wiedersprüchliches gelesen.

Grüße,
Björn

  1. Hallo Leute,

    ich hoffe es verstößt nicht gegen die Regel, nur eine Lösung zu präsentieren, aber ich als Perl-Anfänger habe verzweifelt nach einer Lösung zur Berechnung der aktuellen Kalenderwoche gesucht.

    Da ich nicht auf Anhieb was gefunden habe, dachte ich, ich teile meine Erkenntnisse mit anderen Anfängern:

    $day_of_year = (localtime(time()))[7];
      $week_of_year = int($day_of_year / 7)+1;
      # +1 ist nötig, da die Kalenderwoche IT-gerecht bei 0 anfängt

    Eine Frage stellt sich mir dann aber doch noch:
    Fängt die Woche in Perl mit Sonntag oder Montag an? Ich habe da doch wiedersprüchliches gelesen.

    Grüße,
    Björn

    Das sitimmt aber nicht ganz, da die erste KW manchmal im Vorjahr, und manchmal im Januar anfängt (Ich schau aber nochmal nach wies genau geht)

  2. Hi,

    schau mal hier:
    http://www.i-netlab.de/
    Und dort dann unter Kapitel 'KalenderTools' -> neues Modul.

    In dem Modul von Rolf ist alles drin was du brauchst.

    Ciao,
     Wolfgang

  3. Hallo Leute,

    ich hoffe es verstößt nicht gegen die Regel, nur eine Lösung zu präsentieren, aber ich als Perl-Anfänger habe verzweifelt nach einer Lösung zur Berechnung der aktuellen Kalenderwoche gesucht.

    Da ich nicht auf Anhieb was gefunden habe, dachte ich, ich teile meine Erkenntnisse mit anderen Anfängern:

    $day_of_year = (localtime(time()))[7];
      $week_of_year = int($day_of_year / 7)+1;
      # +1 ist nötig, da die Kalenderwoche IT-gerecht bei 0 anfängt

    Eine Frage stellt sich mir dann aber doch noch:
    Fängt die Woche in Perl mit Sonntag oder Montag an? Ich habe da doch wiedersprüchliches gelesen.

    den wochentag erhält man mit $wtag = (localtime(time))[6]
    wobei $wtag von 0 (sonntag) bis 6 (samstag)

    Grüße,
    Björn