Заполните пустые дни в календаре php, начиная с понедельника

В настоящее время у меня есть календарь, встроенный в php, но я изо всех сил пытаюсь заполнить пустые дни до первого числа месяца, используя понедельник в качестве начального дня.

Проблема в том, что когда у меня получается месяц, начинающийся с воскресенья, неделя начинается с воскресенья, а не с понедельника, как хотелось бы, я исправил это, выполнив оператор if и вручную вставив 6 пустых дней, если месяц начинается с воскресенья, но мне было интересно, как я мог бы сделать это без этой ручной проверки в воскресенье.

$ DayOfWeek получается из функции php, чтобы получить день недели, поэтому с воскресенья от 0 до субботы, равного 6.

Любой способ сделать это, или мне придется согласиться с моим "уродливым" ручным воскресным исправлением.

В основном я хочу подсчитать пустые дни перед днем ​​начала месяца.

// Fill Blank Days
for ($blankcounter = 1; $blankcounter < $dayOfWeek; $blankcounter++) {
        $calendar .= "<div class='single_day disable_day'><label>&nbsp</label></div><!--.single_day-->";
}

person Thomas    schedule 06.08.2014    source источник


Ответы (1)


Ну, вы можете оставить свой цикл таким же, но настроить переменную раньше, перед циклом:

$dayOfWeek = $dayOfWeek ? $dayOfWeek : 7;

Or:

if ($dayOfWeek==0) $dayOfWeek = 7;

Думаю, вы могли раньше задумываться об этих вариантах. Ничего лучшего пока не могу найти.

person coder.in.me    schedule 06.08.2014