Bevare grøn bacground i tidsrummet.
<?php// Konfiguration, f.eks. fra en database
$opening_days = array(
array('day' => 1),
array('day' => 2, 'from' => '11:00', 'to' => '21:00'),
array('day' => 3, 'from' => '11:00', 'to' => '21:00'),
array('day' => 4, 'from' => '11:00', 'to' => '21:00'),
array('day' => 5, 'from' => '11:00', 'to' => '04:00'),
array('day' => 6, 'from' => '11:00', 'to' => '04:00'),
array('day' => 7, 'from' => '11:00', 'to' => '21:00')
);
// Statisk data
$day_names = array(1 => 'Mandag', 'Tirsdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lørdag', 'Søndag');
$color_closed = 'red';
$color_default = 'white';
$color_open = 'green';
// Logik
$current_day = date('N');
$the_date = date('Y-m-d');
$now = time();
foreach($opening_days as $day) {
$day_name = $day_names[$day['day']];
if(isset($day['from']) && isset($day['to'])) {
if(strtotime($the_date.' '.$day['from']) < $now && $now < strtotime($the_date.' '.$day['to']) && $day['day'] == $current_day) {
$color = $color_open;
} else {
$color = $color_default;
}
$textlines[] = array('text' => $day_name.': '.$day['from'].' - '.$day['to'], 'css' => 'background-color: '.$color);
} else {
$textlines[] = array('text' => $day_name.': Lukket', 'css' => 'background-color: '.$color_closed);
}
}
//HTML og output til sidst.
foreach($textlines as $line) {
echo '<span style="'.$line['css'].'">'.$line['text'].'</span><br>';
}
?>
Når den er sat til 04:00 er den ikke længere brugeligt dette script. Sætter jeg den til 23:59, vil det virke.
Men hvordan får jeg det ændret så den også virker til 04:00 på samme dag, og ikke til ny day-nr.
:/