Ich frage mich, ob es eine eingebaute Perl-Funktion gibt, die das Datum anpasst, wenn Sie einen Monat davon brauchen. Z.B. Wenn das Datum der 31. ist, wird es an das Ende des vorherigen Monats angepasst, wenn es keine 31 Tage hat.Wie Monate in Perl unter Berücksichtigung der verschiedenen Tage im Monat zurückgehen?
Ich würde es einfach auf 30 ändern, wenn es nicht für die Monate mit 31 Tagen nebeneinander (Dez/Jan, Jul/Aug) und Februar wäre. Ich möchte nur das Datum eine bestimmte Zeit von dem aktuellen Datum, z.
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
$current_date = join("-", (1900+$year), ($mon+1), $mday);
$one_month_ago = join("-", (1900+$year), ($mon), $mday);
$one_year_ago = join("-", (1899+$year), ($mon+1), $mday);
ich mit der Februar-Instanz umgehen können, da es nur auf die Jahre gilt, aber wenn dies im Monat am 31. Dezember 2012 dann 2012, die natürlich 31. November gab es nicht bedeuten würde, Wegnehmen genommen wurde. Ich dachte, ich würde fragen, ob es eine Funktion war, bevor die Dinge für mich zu verkomplizieren ... danke :)
[DateTime] (https://metacpan.org/module/DateTime) vielleicht suchen Sie dieses Modul? (es hat Datum 'Mathe) – gaussblurinc
Beide Antworten unten gut! Date Time sieht wie eine wirklich nützliche Option aus, aber da ich es für einen kleinen Teil meines Codes verwenden möchte, denke ich, dass ich einfach einsteigen und eine Reihe von Klauseln dafür machen könnte. Lange wehend, aber es wird mir helfen zu lernen ... das ist mein erster Tag mit Perl: P Danke für Ihre Hilfe! – dgBP