http://qs321.pair.com?node_id=11103162


in reply to Compare two dates

2 minor comments on your code
if ($d2 >= $1) {
i guess $1 is a typo.
print "\n $d2 is greater or equal to $d1\n";
your print statements are equal.

one recommended module on CPAN is DateTime

from the DateTime docs:
DateTime->compare( $dt1, $dt2 )
Compare two DateTime objects. The semantics are compatible with Perl's sort() function; it returns -1 if $d1 < $d2, 0 if $d1 == $d2, 1 if $d1 > $d2.
use strict; use warnings; use feature 'say'; use DateTime; my $d1 = DateTime->new( year => 2019, month => 8, day => 1, time_zone => 'America/Chicago', ); my $d2 = DateTime->new( year => 2019, month => 6, day => 8, time_zone => 'America/Chicago', );
say DateTime->compare( $d1, $d2 )
say DateTime->compare( $d1, $d2 ) > 0 ? $d1->ymd .' is greater than ' . $d2->ymd : $d2->ymd .' is greater or equal to ' . $d1->ymd;
update: sorry, my fault <no excuse>