Я использую библиотеку Carbon PHP. Ответ в дублированном вопросе использует встроенную функцию PHP.Как найти количество дней в диапазоне дат, которые находятся в пределах другого диапазона дат в PHP?
count how many days within a date range are within another date range
Ниже приведен код, который я использую, чтобы найти, если диапазон дат ($userDateStart
и $userDateEnd
) находится с другим диапазоном дат ($couponStart and
$ couponEnd`) и она отлично работает без каких-либо ошибок, но Я не знаю, как найти дни, которые перекрываются/существуют в этом диапазоне дат?
Библиотека я использую http://carbon.nesbot.com/docs/
Ожидаемый результат должен быть 4 в этом case..Hope вы мне помочь.
$userDateStart = Carbon::createFromFormat('Y-m-d','2015-06-26');
$userDateEnd = Carbon::createFromFormat('Y-m-d','2015-06-29');
$couponStart = Carbon::createFromFormat('Y-m-d','2015-06-26');
$couponEnd = Carbon::createFromFormat('Y-m-d','2015-10-31');
if(($userDateStart >= $couponStart && $userDateEnd <= $couponEnd) ||
($couponStart >= $userDateStart && $couponEnd <= $userDateEnd)){
die("Yes,The date is within this date range");
}
die("No,It is not within this date range");
Трудность, которую вы имеете в понимании ответа на предыдущий вопрос, не имеет никакого отношения к тому, является ли этот вопрос дубликатом. –
Я использую Carbon PHP library. Конечно, есть и другой простой способ рассчитать дни. – user3407278
Возможный дубликат [подсчет количества дней в диапазоне дат в пределах другого диапазона дат] (http://stackoverflow.com/questions/13227912/count-how-many-days-within-a-date-range-are- in-another-date-range) – rogerdeuce