Привет, я уже использую этот код из другого вопроса - который добавляет два дополнительных дня к концу дня в случае выходных
function add_business_days($startdate,$buisnessdays,$holidays,$dateformat){
$i=1;
$dayx = strtotime($startdate);
while($i < $buisnessdays){
$day = date('N',$dayx);
$datex = date('Y-m-d',$dayx);
if($day < 6 && !in_array($datex,$holidays))$i++;
$dayx = strtotime($datex.' +1 day');
}
return date($dateformat,$dayx);
}
Эта функция является частью вывода json, который отображается в календаре jquery - она берет начальные и конечные даты и отображает их.
Можно ли создать код, который будет возвращать выходные данные, так что, когда он попадает на выходные, он создает дату окончания, переход к понедельнику создает дату начала, а затем продолжается, пока не достигнет исходной заданной даты окончания?
x = date('w');
if (x != 6) {
while (x != 6) {
//start adding days to start date
}
} else {
//create new enddate = current iteration of dates currentdate;
//then new start (add two days to it to get to monday) currentdate + 2 = newstartdate
//redo above till you get to original end date