The
Date::Calc
module will let you do date computations back to the year 1 C.E..
The
Delta_Days function should be just what you need.
my $dd=Delta_Days(1,1,1,$cur_yr,$cur_mo,$cur_da);
If you're interested in how to do the calculation by hand
I highly recommend checking out
Calenderical Calculations by
Derschowitz and
Reingold. Should be available at any bookstore w/ a
reasonably complete techincal section.
Looking at
vrooms answer and mine reminds
me that you need
to be careful in how you define
epoch.
In general terms
eopch is the
start-date of your calendar.
So when does your calendar start ???
- Jan 1, 1970 (unix Epoch)
- Jan 1, 1900 (another epoch used in computers)
- Jan 1, 1 (Gregorian epoch)
- etc..
In my answer I had assumed the Gregorian epoch. If you want
your "time from epoch" in seconds and your epoch is 1/1/1970 then
the
time() function returns that.