Это действительно сводит меня с ума, поэтому, пожалуйста, помогите.
У меня есть этот код, как показано ниже, он отображает список дат на следующие 7 дней.
Вещи, которые я хочукод достижения.
- Отображение «Сегодня и« Завтра »вместо соответствующей даты.
- После выбора даты добавьте« текущий »класс, таким образом она будет выделена другимcolor.
- «Сегодня» следует выбирать по умолчанию при первой загрузке страницы.
Приведенный ниже код отвечает этим требованиям
<?php
$today = date("d-m-Y", strtotime('today'));
$tomorrow = date("d-m-Y", strtotime('tomorrow'));
echo '
<li><a href="?date='.$today.'">'.(($_GET['date'] == $today) ? '<span class="current"' . '>Today</span>' : 'Today').'</a></li>';
echo '
<li><a href="?date='.$tomorrow.'">'.(($_GET['date'] == $tomorrow) ? '<span class="current"' . '>Tomorrow</span>' : 'Tomorrow').'</a></li>';
for ($time = strtotime('+2 days'), $i=0; $i < 5; $time = strtotime('+1 days', $time), $i++) {$date = date("d-m-Y", $time);
echo '
<li><a href="?date='.$date.'">'.(($_GET['date'] == $date) ? '<span class="current">' : '') . date("D jS", $time) . ((isset($_GET['date']) && $_GET['date'] == $date) ? '</span>' : '') . "</a></li>";}
?>
Однако в последнее время янеобходимо изменить форматирование даты с dmY на Ymd
. В результате этого моего третьего требования, выбранное по умолчанию «сегодня» больше не работает.
<?php
$today = date("Y-m-d", strtotime('today'));
$tomorrow = date("Y-m-d", strtotime('tomorrow'));
echo '
<li><a href="?date='.$today.'">'.(($_GET['date'] == $today) ? '<span class="current"' . '>Today</span>' : 'Today').'</a></li>';
echo '
<li><a href="?date='.$tomorrow.'">'.(($_GET['date'] == $tomorrow) ? '<span class="current"' . '>Tomorrow</span>' : 'Tomorrow').'</a></li>';
for ($time = strtotime('+2 days'), $i=0; $i < 5; $time = strtotime('+1 days', $time), $i++) {$date = date("Y-m-d", $time);
echo '
<li><a href="?date='.$date.'">'.(($_GET['date'] == $date) ? '<span class="current">' : '') . date("D jS", $time) . ((isset($_GET['date']) && $_GET['date'] == $date) ? '</span>' : '') . "</a></li>";}
?>
Может кто-тоПожалуйста, помогите с этим.
Заранее спасибо
У меня есть это сейчас
Но я боюсь, что это не добавляет класс при загрузке страницы. Так что "Сегодня"по умолчанию не выделено.
Я что-то напутал?
<?php
if(isset($_GET['date'])){
$gdate = $_GET['date'];
}
else{
$gdate = date("Y-m-d", strtotime('today')); //Or whatever arbitrary date you want.
}
$today = date("Y-m-d", strtotime('today'));
$tomorrow = date("Y-m-d", strtotime('tomorrow'));
echo '
<li><a href="?date='.$today.'">'.(($gdate == $today) ? '<span class="current"' . '>Today</span>' : 'Today').'</a></li>';
echo '
<li><a href="?date='.$tomorrow.'">'.(($gdate == $tomorrow) ? '<span class="current"' . '>Tomorrow</span>' : 'Tomorrow').'</a></li>';
for ($time = strtotime('+2 days'), $i=0; $i < 5; $time = strtotime('+1 days', $time), $i++) {$date = date("Y-m-d", $time);
echo '
<li><a href="?date='.$date.'">'.(($gdate == $date) ? '<span class="current">' : '') . date("D jS", $time) . ((isset($gdate) && $gdate == $date) ? '</span>' : '') . "</a></li>";}
?>