GoLang gregoriantojd

request it (128)
GoLang replacement for PHP's gregoriantojd [edit | history]

Do you know a GoLang replacement for PHP's gregoriantojd? Write it!

PHP gregoriantojd

PHP original manual for gregoriantojd [ show | php.net ]


(PHP 4, PHP 5, PHP 7)

gregoriantojdConverts a Gregorian date to Julian Day Count


int gregoriantojd ( int $month , int $day , int $year )

The valid range for the Gregorian calendar is from November 25, 4714 B.C. to at least December 31, 9999 A.D.

Although this function can handle dates all the way back to 4714 B.C., such use may not be meaningful. The Gregorian calendar was not instituted until October 15, 1582 (or October 5, 1582 in the Julian calendar). Some countries did not accept it until much later. For example, Britain converted in 1752, The USSR in 1918 and Greece in 1923. Most European countries used the Julian calendar prior to the Gregorian.



The month as a number from 1 (for January) to 12 (for December)


The day as a number from 1 to 31. If the month has less days then given, overflow occurs; see the example below.


The year as a number between -4714 and 9999. Negative numbers mean years B.C., positive numbers mean years A.D. Note that there is no year 0; December 31, 1 B.C. is immediately followed by January 1, 1 A.D.

Return Values

The julian day for the given gregorian date as an integer. Dates outside the valid range return 0.


Example #1 Calendar functions

$gregorian jdtogregorian($jd);

The above example will output:


Example #2 Overflow behavior

echo gregoriantojd(2312018), PHP_EOL,
gregoriantojd(3,  32018), PHP_EOL;

The above example will output:


See Also

  • jdtogregorian() - Converts Julian Day Count to Gregorian date
  • cal_to_jd() - Converts from a supported calendar to Julian Day Count