Php/docs/function.gregoriantojd

提供:Dev Guides
< Php
移動先:案内検索

gregoriantojd

(PHP 4, PHP 5, PHP 7)

gregoriantojdグレゴリウス日をユリウス積算日に変換する


説明

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

有効なグレゴリウス暦の範囲は紀元前 4714 年 11月25日から、少なくとも紀元 9999 年 12月31日までです。

このソフトウェアは日付けを全て紀元前 4714 年にさかのぼることが 出来ますが、この様な使い方は特に意味があるわけではありません。 グレゴリウス暦は 1582 年 10 月 15 日(ユリウス暦では 1582 年 10 月 5 日)まで制定されていませんでした。 この暦は、いくつかの国でもっと後まで受け入れられませんでした。 例えば、イギリスは 1752 年、ロシア(USSR)は 1918 年、ギリシャは 1923 年に 移行しました。 ほとんどのヨーロッパの国々では、グレゴリウス暦の前は ユリウス暦を使用していました。


パラメータ

month
月を表す、1 (January) から 12 (December) までの数字。 月の最後の日が与えられた日より少ない場合、オーバーフローが発生します; 例を参照してください。
day
日を表す、1 から 31 までの数字。
year
年を表す、-4714 から 9999 までの数字。 負の値は B.C を意味し、正の値は A.D を意味しています。 0 という年はないことに注意してください。 つまり、B.C 元年の12月31日の次は、A.D 元年の1月1日です。


返り値

指定したグレゴリウス日をユリウス積算日になおした結果を返します。 範囲外の日付については 0 を返します。


例1 カレンダー関数

<?php$jd = gregoriantojd(10, 11, 1970);echo "$jd\n";$gregorian = jdtogregorian($jd);echo "$gregorian\n";?>

上の例の出力は以下となります。


2440871
10/11/1970

例2 Overflow behavior

<?phpecho gregoriantojd(2, 31, 2018), PHP_EOL,     gregoriantojd(3,  3, 2018), PHP_EOL;?>

上の例の出力は以下となります。


2458181
2458181

参考

  • jdtogregorian() - ユリウス積算日をグレゴリウス日に変換する
  • cal_to_jd() - サポートされるカレンダーからユリウス積算日に変換する