2015-06-24 50 views
1

忽視了一年,我有2個日期範圍:檢查的月和日使用PHP DateTime對象

2014/01/28 - 2015/10/10 //first 
2015/10/11 - 2014/01/27 //second 

如何使用DateTime對象在PHP中只包括月,日和忽略了一年,如果2015/06/24是第一間檢查或第二日期範圍。由於06/24介於01/28 - 10/10之間

謝謝。

+1

使用[格式()](http://php.net/manual/en/datetime.format.php)從兩個提取日/月並做相應'如果()'比較。 .. –

回答

0
$date1 = new DateTime("2014/01/28"); 
$date2 = new DateTime("2015/10/10"); 
$date_compare = new DateTime("2015/06/24"); 

if ($date_compare->format('m/d') > $date1->format('m/d') && 
$date_compare->format('m/d') <= $date2->format('m/d')) { 
     echo $date_compare->format('m/d') . "fits"; 
    } 

http://php.net/manual/en/datetime.diff.php <這將幫助您與此

0

如果我理解正確的話,我覺得這個方法應該照顧你。

function isWithinDayOfYearRange($rangeBegin, $rangeEnd, $dateToCheck) 
{ 
    return $dateToCheck->format('md') > $rangeBegin->format('md') && 
     $dateToCheck->format('md') < $rangeEnd->format('md'); 
}