Мне нужно создать функцию, которая получает 5 параметров, представляющих информацию о рабочем времени какого-либо отдела.
- когда начинается / заканчивается работа,
- когда начинается / заканчивается обеденное время (или любой другой перерыв),
- целое число, представляющее минуты на то, на какие маленькие кусочки мы должны разделить период времени.
Кроме того - возможно, что в рабочем времени нет перерывов.
Функция должна возвращать все интервалы из рабочего времени.
function split_time_into_intervals($work_starts,$work_ends,$break_starts=null;
$break_ends=null,$minutes_per_interval=60)
{
$intervals=array();
//all of the function code
return $intervals;
}
Так что, если у меня естьследующие параметры для функции
function split_time_into_intervals("8:30","14:50","11:45", "12:25");
Я хотел бы получить следующий массив:
$intervals[0]['starts']="8:30";
$intervals[0]['ends']="9:30";
$intervals[1]['starts']="9:30";
$intervals[1]['ends']="10:30";
$intervals[2]['starts']="10:30";
$intervals[2]['ends']="11:30";
$intervals[3]['starts']="11:30";
$intervals[3]['ends']="11:45";
//this interval was smaller than 60 minutes - because of the break (which starts at 11:45)
$intervals[4]['starts']="12:25";//starts when the break ends
$intervals[4]['ends']="13:25"; // interval is again 60 minutes
$intervals[5]['starts']="13:25";
$intervals[5]['ends']="14:25";
$intervals[6]['starts']="14:25";
$intervals[6]['ends']="14:50";
//this period is shorter than 60 minutes - because work ends
Любые советы?Я бы уточнил любой php (или C #) код, касающийся этой проблемы!