Quelle est la méthode recommandée de faire Arithmétique date en Perl?
-
08-10-2019 - |
Question
Quelle est la méthode recommandée de faire Arithmétique date en Perl?
Dites par exemple que je veux savoir la date il y a trois jours à partir d'aujourd'hui (où today
= 2010-10-17
et today - 3 days
= 2010-10-13
). Comment feriez-vous en Perl?
La solution
Vous pouvez utiliser DateTime et DateTime :: Durée
http://search.cpan.org/dist/DateTime/ lib / DateTime / Duration.pm
Ou travailler avec unix horodatages:
my $now = time();
my $threeDaysAgo = $now - 3 * 86400;
my ($day, $mon, $year) = (localtime($threeDaysAgo))[3, 4, 5];
printf("Three days ago was %04d-%02d-%02d", $year+1900, $mon+1, $day);
Autres conseils
Voir DateTime sur de CPAN (ou ).
Il y a beaucoup, beaucoup de différents modules de manipulation date et l'heure.
notamment:
- Date :: Calc - et les Add_Delta_Days fonction
- Date :: Manip - et la fonction DateCalc
- DateTime
Tous ces éléments sont bien pensé. Il y a beaucoup d'autres en plus. Beaucoup dépend du type de l'arithmétique que vous voulez faire. DateTime est peut-être le plus rigoureux, mais la date :: Calc et Date :: Manip peut être plus facile à gérer pour le travail que vous avez besoin.
Ceci est de loin le module avec le plus de fonctionnalités que je suis venu à travers: date :: Manip