Нужна помощь для расчета $work_in_daytime
а также $work_in_nighttime
,
$nightStart = '22:00';
$nightEnd = '07:00';
$workers = array(
'0' => array(
'name' => 'Lyons',
'start' => '15:15',
'end' => '23:45'
),
'1' => array(
'name' => 'Santos',
'start' => '10:00',
'end' => '22:00'
),
'2' => array(
'name' => 'Montgomery',
'start' => '22:30',
'end' => '08:00'
)
);foreach ($workers as $worker) {
$length_of_work = abs(strtotime($worker['start']) - strtotime($worker['end'])) / 3600;
$work_in_daytime = '';
$work_in_nighttime = '';
}
Спасибо за вашу помощь.
Если начало и конец охватывают ночной и ночной периоды, вам необходимо разделить рабочее время на отдельные элементы. Я бы предложил преобразовать объекты datetime и использовать dateinterval, чтобы было легче получить длительность.
<?php
$start_time = strtotime("2017-09-01 10:42:00");
$end_time = strtotime("2017-09-02 10:21:00");
//Divide seconds by 60 to get minutes or whatever is appropriate and round off
echo $difference = round(abs($to_time - $from_time) / 60,2). " minutes";
?>