in reply to Time::Local - calculate months elapsed
Please note that I don't think "56" is the correct answer for today. It's still 6 days from the 30th, and only then we'd be 56 months from the given date. Check the other examples.sub months { my (undef,undef,undef,$day,$month,$year) = localtime; $_[0] =~ m#^(\d+)/(\d+)/(\d+)$#; (12 * (1900 + $year - $1)) + 1 + $month - $2 - ($day < $3); } print months( "1999/06/30" ),$/; print months( "2004/01/24" ),$/; print months( "2004/01/25" ),$/; __END__ 55 1 0
Of course, all of this doesn't take into account anything like timezones. But if you're only interested in whole month granularity, I think that's pretty ok.
Liz
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: Time::Local - calculate months elapsed
by Lori713 (Pilgrim) on Feb 24, 2004 at 21:11 UTC |