Функции PHP »»» Календарные функции
(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).
Пример 1. easter_days()
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, <webmaster@ely.anglican.org>)
См. также easter_date().