Необходимо вывести таблицу с некоторыми данными работников.
- сколько длилась смена работника(это решил ф-цией shiftLength)
сложность с выводом:
- сколько времени длилась дневная смена
- сколько времени длилась ночная смена
Ночная смена:
define("SETTINGS_nighttime_start", '22:00');
define("SETTINGS_nighttime_end", '07:00');
Данные в виде массива:
$EMPLOYEES = array(
'0' => array(
'name' => 'Bernice Lyons',
'shift_start' => '15:15',
'shift_end' => '23:45'
),
'1' => array(
'name' => 'Gregg Santos',
'shift_start' => '10:00',
'shift_end' => '22:00'
),
'2' => array(
'name' => 'Bennie Montgomery',
'shift_start' => '22:30',
'shift_end' => '08:00'
),
'3' => array(
'name' => 'Nelson Austin',
'shift_start' => '20:00',
'shift_end' => '10:00'
)
);
сколько длится смена работника
function shiftLength($startDate, $endDate) {
$start = strtotime($startDate);
$end = strtotime($endDate);
// correction
if($start > $end) {
$start -= 86400;
}
$interval = abs($end - $start);
//$minutes = round($interval / 60);
$time = gmdate("H:i", $interval);
return $time;
}
Помогите с логикой написания ф-ции или 2-х функицй.
сложность добавляет еще то, что даты даются только в часах и минутах, а не полная дата. не пойму как подсчитывать.