Всем доброго здравия! Столкнулся я тут с несколько нетривиальной задачей: автоматическим вычислением даты начала Масленицы (масленичной недели) для текущего года. Есть у меня сайт. На нём, в зависимости от текущей даты, логотип в шапке меняется на праздничный. Например, 31 декабря лого меняется на красивую новогоднюю ёлочку. Однако, это всё проще пареной репы только для переходящих дат. То есть, для тех, которые из года в год празднуются в один и тот же день. А вот с непереходящими (которые надо вычислять каждый год) - наступила у меня полная (_._) На данном этапе, мне надо вычислить две даты: Пасху и Масленицу (начало масленичной недели). С Пасхой я справился без проблем - вычисляю её дату по формуле Гаусса: PHP: <?php function getEasterDay($year) { $a = $year % 4; $b = $year % 7; $c = $year % 19; $d = (19 * $c + 15) % 30; $e = (2 * $a + 4 * $b - $d + 34) % 7; $month = floor(($d + $e + 114) / 31); $day = (($d + $e + 114) % 31) + 1; //-- $de = mktime(0, 0, 0, $month, $day + 13, $year); return $de; } ?> Возвращает дату Пасхи в формате UNIX Timestamp. Этот код работает безошибочно. А вот с Масленицей возникла проблема. Масленица предшествует Великому Посту, который длится 6 недель и заканчивается Пасхой. То есть, в принципе, ничего сложного (вроде) - отнять от даты Пасхи 7 недель и всё. Но... Проблема в том, что я не могу додуматься, как учитывать високосный год. Да и вычитание дат у меня, почему-то, не работает... Конструкция: echo strtotime(getEasterDay(2012), "-7 week"); Возвращает: A non well formed numeric value encountered in /home/u.... Если кто-то может поделиться готовым и работающим алгоритмом вычисления Масленицы - буду благодарен! Спасибо.