<?php
function getDay($year,$mon,$day)
{
$days = array ("воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота");
$day = (int)$day; //если день двухсимвольный и <10
$mon = (int)$mon; //если месяц двухсимвольный и <10
$a = (int)((14 - $mon) / 12); // 1
$y = $year - $a; // 2015
$m = $mon + 12 * $a - 2; // 4
$d = (7000 + (int)($day+$y+ (int)($y/4) - (int)($y/100) + (int)($y/400) + (31*$m)/12))%7;
return $days[$d];
}
echo getDay(2016,06,05);
?>
Помогите разобраться с данным кодом, расскажите алгоритм и что за что отвечает!!! Очень хочу разобраться, но ничего не получается. Буду очень признателен, если распишите работу этого кода или скинете ресурс, где это подробно описывается! Заранее спасибо:)