Datumsfunktionen in PERL
Oliver Zwenzner
- perl
Ich suche eine einfache Funtion in PERL, die zu einem angegebenen beliebigen Datum den Wochentag und die Nummer der Kalenderwoche im Jahr ermiitelt.
Gibt es da was einfaches !!
Unter www.perl.com habe ich bisher nur Mammutlösungen (Bibliotheken) gefunden, wo mit Kanonen auf Spatzen geschossen wird.
Gibt es eine PERL-Funktion, die ein vorgegebenes Datum (Tag/Monat/Jahr) in das interne PERL-Datumsformat umwandeln ?
Hallo!
Ich suche eine einfache Funtion in PERL, die zu einem angegebenen beliebigen Datum den Wochentag und die Nummer der Kalenderwoche im Jahr ermiitelt.
leider keine Ahnung :-(
Gibt es eine PERL-Funktion, die ein vorgegebenes Datum (Tag/Monat/Jahr) in das interne PERL-Datumsformat umwandeln ?
$sec=00;
$min=00;
$hour=00;
$day=substr($ab,0,2);
$mon=substr($ab,3,2)-1;
$year=substr($ab,6,4);
use Time::Local;
$sekunden = timelocal($sec,$min,$hour,$day,$mon,$year);
wobei $ab das Datum im Format "TT.MM.JJJJ" ist
gruß
jörg
Ich suche eine einfache Funtion in PERL, die zu einem angegebenen beliebigen Datum den Wochentag und die Nummer der Kalenderwoche im Jahr ermiitelt.
Für die Bestimmung des Wochentags gibt es folgendes:
http://www.perl.com/cgi-bin/pace/pub/doc/manual/html/pod/perlfunc/localtime.html
Die Variable $wday enthält anschließend den Wochentag als Zahl kodiert (probier's aus, ich weiß jetzt auch nicht, ob jetzt Sonntag für 0 steht oder Samstag oder Montag oder...).
Die Kalendernummer könntest Du wohl mit Hilfe von $yday (Tag im Jahr, also 1.2. = 32. Tag) bestimmen. Da ich die Kalendernummer-Regel nicht kenne, muss ich jetzt mal raten, aber es müsste etwa so gehen: Du könntest den Wochentag vom 1.1. des Jahres feststellen, daraus erkennen, an welchem Tag im Jahr die erste Woche des Jahres beginnt, dies dann vom aktuellen Tag im Jahr abziehen und das alles durch 7 teilen.
Sollte am Ende nur wenige Zeilen Perl-Code ergeben... :-)
Grüße,
Hanno
hi!
Ich suche eine einfache Funtion in PERL, die zu einem angegebenen beliebigen Datum den
Wochentag und die Nummer der Kalenderwoche im Jahr ermiitelt.
Die bevorzugte Lösung ist die Verwendung des Moduls Date::Calc. Das enthält die Funktionen Day_of_Week und Week_Number, die genau zu diesem Zweck entwickelt wurden.
Unter www.perl.com habe ich bisher nur Mammutlösungen (Bibliotheken) gefunden, wo mit
Kanonen auf Spatzen geschossen wird.
Jeder vernünftige Perl-Programmierer würde die Benutzung eines Modul bevorzugen, anstatt selbst einen Algorithmus zu entwickeln.
Gibt es eine PERL-Funktion, die ein vorgegebenes Datum (Tag/Monat/Jahr) in das interne
PERL-Datumsformat umwandeln ?
Im Modul Time::Local gibt es passende Funktionen: timelocal und timegm.
bye, Frank!