2012-06-08 7 views
-2

Как рассчитать следующий рабочий день с учетом Zend_Date и времени отсечения 5 вечера? Рабочие дни - M-F (будние дни).Расчет на следующий рабочий день

Пример: пт 4 вечера должны вернуться ту же дату СБ в любое время должен вернуться в следующий пн вт 8 вечера должны вернуться ср

+0

возможно дубликат [Следующий рабочий день указанной даты в PHP] (http://stackoverflow.com/questions/5532002/next-business-day-of-given-date-in-php) –

+0

Я знаю как я буду делать это в PHP с добавлением дней времени(), но должен быть лучший способ – gandalf007

+0

@ gandalf007 Почему это должно быть? Что не так с этим подходом? –

ответ

2

Я думаю, что это было предложено до, Next business day of given date in PHP, но здесь используется Zend_Date:

$now = new Zend_Date(); 
if (($now->get(Zend_Date::WEEKDAY_DIGIT) % 6 == 0) 
|| ($now->isLater('17:00:00', Zend_Date::TIMES)) 
) { 
    $now->set(
     strtotime('+1 weekday', $now->toString(Zend_Date::TIMESTAMP)), 
     Zend_Date::TIMESTAMP 
    ); 
} 
echo $now->toString(Zend_Date::W3C); 
Смежные вопросы