@zv3r0l

Как разобраться в данном коде и понять его алгоритм?

<?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);
?>

Помогите разобраться с данным кодом, расскажите алгоритм и что за что отвечает!!! Очень хочу разобраться, но ничего не получается. Буду очень признателен, если распишите работу этого кода или скинете ресурс, где это подробно описывается! Заранее спасибо:)
  • Вопрос задан
  • 187 просмотров
Решения вопроса 1
@prishelec
Вот вам аналог!
Тут думаю проще разобраться будет:
function getDay($d, $m, $y) {
	$arrDays = array ("воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота");
	
	$n = date('w', mktime(0, 0, 0, $m, $d, $y));
	return $arrDays[$n];
}

echo getDay(27, 06, 2016);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы