---
name: "Time::JulianDay"
section: "3pm"
platform: "linux"
package: "perl-time-modules"
version: "2013.0912-13"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Time::JulianDay"
---

# Time::JulianDay(3pm)

## NAME

Time::JulianDay -- Julian calendar manipulations

## SYNOPSIS

```
        use Time::JulianDay
        $jd = julian_day($year, $month_1_to_12, $day)
        $jd = local_julian_day($seconds_since_1970);
        $jd = gm_julian_day($seconds_since_1970);
        ($year, $month_1_to_12, $day) = inverse_julian_day($jd)
        $dow = day_of_week($jd)
        print (Sun,Mon,Tue,Wed,Thu,Fri,Sat)[$dow];
        $seconds_since_jan_1_1970 = jd_secondslocal($jd, $hour, $min, $sec)
        $seconds_since_jan_1_1970 = jd_secondsgm($jd, $hour, $min, $sec)
        $seconds_since_jan_1_1970 = jd_timelocal($sec,$min,$hours,$mday,$month_0_to_11,$year)
        $seconds_since_jan_1_1970 = jd_timegm($sec,$min,$hours,$mday,$month_0_to_11,$year)
```

## DESCRIPTION

JulianDay is a package that manipulates dates as number of days since  some time a long time ago.  It's easy to add and subtract time using julian days...

The day\_of\_week returned by **day\_of\_week()** is 0 for Sunday, and 6 for Saturday and everything else is in between.

## ERRATA

Time::JulianDay is not a correct implementation.  There are two problems.  The first problem is that Time::JulianDay only works with integers.  Julian Day can be fractional to represent time within a day.  If you call **inverse\_julian\_day()** with a non-integer time, it will often give you an incorrect result.

The second problem is that Julian Days start at noon rather than midnight.  The **julian\_day()** function returns results that are too large by 0.5.

What to do about these problems is currently open for debate.  I'm tempted to leave the current functions alone and add a second set with more accurate behavior.

There is another implementation in Astro::Time that may be more accurate.

## GENESIS

Written by David Muir Sharnoff \<cpan@dave.sharnoff.org\> with help from previous work by  Kurt Jaeger aka PI \<zrzr0111@helpdesk.rus.uni-stuttgart.de\>\
  	based on postings from: Ian Miller \<ian\_m@cix.compulink.co.uk\>; Gary Puckering \<garyp%cognos.uucp@uunet.uu.net\>\
 	based on Collected Algorithms of the ACM ?; and the unknown-to-me author of Time::Local.

## LICENSE

Copyright (C) 1996-1999 David Muir Sharnoff.  License hereby granted for anyone to use, modify or redistribute this module at their own risk.  Please feed useful changes back to cpan@dave.sharnoff.org.
