Показывать текущий день посередине

У меня есть цикл while, который показывает 5 дней. Первый день – текущий день, а остальные – следующий 4. Это мой код:

$datetime = new \DateTime(); $listItem = array('<li class="active">', '</li>'); $i = 0; while (true) { if ($i === 5) break; if ($datetime->format('N') === '7' && $i === 0) { $datetime->add(new \DateInterval('P1D')); continue; } echo $listItem[0] . $datetime->format('D d-m') . $listItem[1]; $listItem = array('<li>', '</li>'); $datetime->add(new \DateInterval('P1D')); $i++; } 

Результат выглядит следующим образом: введите описание изображения здесь

Моя проблема: я хочу, чтобы текущий день был посередине. Где суббота должна быть в текущий день. Вы знаете, как это сделать?

Заранее спасибо.

Пожалуйста, попробуйте приведенный ниже код:

 $datetime = new \DateTime(); $listItem = array('<li">', '</li>'); $listItem_active = array('<li class="active">', '</li>'); $i = 0; while (true) { if ($i === 5) break; if ($datetime->format('N') === '7' && $i === 0) { $datetime->add(new \DateInterval('P1D')); continue; } if($i===0){ $today = $datetime->format('D d-m'); } if($i===3){ echo $listItem_active[0] . $today . $listItem_active[1]; } if($i!=0){ echo $listItem[0] . $datetime->format('D d-m') . $listItem[1]; } $listItem = array('<li>', '</li>'); $datetime->add(new \DateInterval('P1D')); $i++; } 
 $datetime = new \DateTime(); $datetime->modify('-2 Day'); 

http://php.net/manual/en/datetime.modify.php

Вы могли бы просто вычесть 2 дня с вашего начального дня, как это.

 $datetime = new \DateTime(); $datetime->sub(new \DateInterval('P2D'));