Sep
17
2010
|
|
| easter_days (PHP 3>= 3.0.9, PHP 4, PHP 5) easter_days - получает дату - количество дней после 21 марта, на которую падает Easter в данном году. Описаниеint easter_days ( [int year [, int method]]) Возвращает дату - количество дней после 21 марта, на которую падает Easter в данном году. Если год не специфицирован, по умолчанию используется текущий год. После PHP 4.3.0 параметр year является необязательным и по умолчанию имеет значение текущего года в соответствии с локальным временем, если этот параметр опущен. Параметр method также был введён в PHP 4.3.0 и даёт возможность рассчитывать easter-даты на основе Грегорианского календаря для лет 1582 - 1752, если имеет значение CAL_EASTER_ROMAN. См. календарные константы. Эта функция может использоваться вместо easter_date() для расчёта Easter для тех лет, которые находятся вне диапазона штампов времени UNIX (до 1970 или после 2037). | |||
echo easter_days (1999);/* 14, i.e. April 4 */ echo easter_days (1492);/* 32, i.e. April 22*/ echo easter_days (1913);/*2, i.e. March 23*/ |
Дата Easter Day была определена советом Council of Nicaea в AD325 как воскресенье после первого полнолуния или после Spring Equinox/весеннего равноденствия.Equinox всегда выпадает на 21 марта, так что вычисление сводится к определению даты полнолуния и даты следующего воскресенья. Используемый здесь алгоритм ввёл Dionysius Exiguus около 532 года.В Юлианском летосчислении (до 1753 г.) используется простой 19-летний цикл для отслеживания фаз луны. В Грегорианском календаре (для лет после 1753 - изобрели Clavius и Lilius, ввёл Папа Gregory XIII в октябре 1582 г., а в Британии и колониях - в сентябре 1752 г.) добавлены два корректирующих фактора для уточнения цикла.
(Этот код основан на С-программе Simon Kershaw, < Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript >)
См. также easter_date().
| Комментарии |
|