PHP — выбрать все выходные на ближайшие пару лет=)

Понадобилось для одного клиента вывести все выходные на ближайшие пару лет — не спрашивайте даже зачем=)

В итоге получилось что-то типа этого:

 

$holidays = array();<br />
$current_day = date('w');<br />
$x = 6-$current_day;<br />
$startDate = strtotime(date('Y-m-d').", 1:00")+(24*3600*$x);<br />
$numOfHols = 100;<br />
$one_day = 24*3600;<br />
$days_to_plus = 7*24*3600;<br />
<br />
for($i=1;$i<=$numOfHols;$i++){<br />
     $holidays[] = $startDate+$days_to_plus;<br />
     $holidays[] = $startDate+$days_to_plus+$one_day;<br />
     $startDate+=$days_to_plus;<br />
}

Удивительное рядом, но именно этот вариант отработал гораздо быстрее парочки аналогов с использованием strtotime в цикле (что, конечно, неудивительно) =)

Комментировать

Войдите чтобы оставить комментарий.