Вычисление даты Пасхи
// Определяем дату Пасхи в нынешнем году $pY = (int)date('Y'); // Год $pA = $pY % 19; $pB = $pY % 4; $pC = $pY % 7; $pD = ($pA * 19 + 15) % 30; $pE = (2*$pB + 4*$pC + 6*$pD + 6) % 7; $pF = $pD + $pE; $pM = 3; // Месяц $pN = 22 + $pF + ($pY >= 1918 ? 13 : 0); // Число месяца if($pN > 31){ $pM++; $pN -= 31; } if($pN > 30){ $pM++; $pN -= 30; } $pasha = sprintf("%02d%02d", $pN, $pM);
Использован алгоритм Гаусса.