use Date::Manip;

Was hab ich mir den Kopf zerbrochen.
Ich hab ein paar Datenbanken, mit Unixtime Stempeln versehen, aus denen ich Informationen gewinnen will.
Die Daten sollen vom vergangenen Monat, laufenden Monat, vergangener Woche und laufender Woche erfasst werden.
Ja, jetzt muss ich das in vernünftige Start und End Zeiten bringen.
Ok, am einfachsten ist laufender Monat.
localtime() und dann nochmals einen timelocal() aufruf mit dem 1. des Monats als Tag.
Als nächstes Vergangener Monat.
Da muss man nur beim Jahreswechsel aufpassen, also ne Bedingung setzen und fertig.
Kommen wir nun zu dem Wochenproblem.
Wie erfasse ich den vergangenen Montag?
Hier kommt nun Date::Manip ins Spiel.
Was hab ich mir einen abgebrochen.
Dabei ist es so einfach:

my $date = DateCalc("Monday","-1 week");
my $return = ParseDate($date,"%s");

Dabei bräuchte man das -1Week ja garnicht, ne woche ist doch immer gleich lang.
Aber einfach „Montag“ eingeben und schon bekommt man das richtige Datum.
Herrlich.
Das hat mir ne Menge Kopfzerbrechen gespart, wie ich es in der Geophysik immer hatte.
Dort ging es nur um Datumsrechnen.
Und ich hasse das!
Jetzt nichtmehr:))

Dieser Beitrag wurde unter Initializing /dev/chaos veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.