in reply to RE: Re: Calculating a persons age based on their birthday.
in thread Calculating a persons age based on their birthday.
Date::Calc (or, heaven forbid, Date::Manip) is probably
overkill since you only want age in years. All you really
want to know is whether the birthday has passed this year.
Of course, if you're only using this on a person's birthday, all you need to do is subtract their birth year from the current year :-)sub age { # Assuming $birth_month is 0..11 my ($birth_day, $birth_month, $birth_year) = @_; my ($day, $month, $year) = (localtime)[3..5]; $year += 1900; my $age = $year - $birth_year; $age-- unless sprintf("%02d%02d", $month, $day) >= sprintf("%02d%02d", $birth_month, $birth_day); return $age; }
In Section
Seekers of Perl Wisdom