2011-11-14 31 views
5

Aynı gün Zend_Date dat olup olmadığını kontrol etmek istiyorum. Bunu nasıl yapabilirim?İki Zend_Date nesnesinin tarih bölümleri nasıl karşılaştırılır?

$date1 = new Zend_Date('2011-11-14 10:45:00'); 
$date2 = new Zend_Date('2011-11-14 19:15:00'); 
+0

Aynı gün, Pazartesi, Salı vb. Veya aynı tarih, zaman hariç mi? Ben her durumda, Zend bir karşılaştırma yöntemine sahiptir. http://framework.zend.com/manual/en/zend.date.basic.html, istediğiniz herhangi bir formatı çıkarabilirsiniz. – Matt

+0

Olası karışıklık için özür dilerim, aynı tarihi, zaman hariç, * değil * haftanın aynı günü demek istiyorum! Örnekten anladığım kadarıyla – Benjamin

+0

türünden emin olmak. Ayrıca ihtiyacınız olabilecek sabitlerin listesi. http://framework.zend.com/manual/en/zend.date.constants.html – Matt

cevap

14
$date1 = new Zend_Date('2011-11-14 10:45:00'); 
$date2 = new Zend_Date('2011-11-14 19:15:00'); 
if ($date1->compareDay($date2) === 0) { 
    echo 'same day'; 
} 

Ayrıca şiddetle Zend_Date ihtiyacını varsa doğrulamak için teşvik, bir dipnot düşmek gerekirse Comparing Dates with Zend Date

bölümüne bakınız. Sadece ZF'nin bir parçası olduğu için kullanmayın. Ne Zend_Date çoğu hem yerli DateTime rahatça hızlı ve daha ulaşılabilir vermez: açıklamaların ardından

$date1 = new DateTime('2011-11-14 10:45:00'); 
$date2 = new DateTime('2011-11-14 19:15:00'); 
if ($date1->diff($date2)->days === 0) { 
    echo 'same day'; 
} 

DÜZENLEME
sadece

yapmak aynı tarih olsun karşılaştırmak istiyorsanız
$date1->compareDate($date2) 
+0

Tam olarak aradığım şey ('compare()' ve 'equals()' sadece -AFAIK- ile karşılaştırmanın günüdür. ay, tam tarih bölümü değil). Teşekkürler! – Benjamin

+0

Maalesef, cevabınızı kabul edildikten sonra, yalnızca günü karşılaştırmaktan (tarih + ay + yıl) değil, farkettikten sonra etiketlemem gerekiyordu. Gelecek ay aynı gün de doğru döndü. – Benjamin

+1

@Benjamin errrm, tabii ki ** aynı gün **, ** aynı tarih ** için sordu çünkü yapar. Eğer aynı tarihi istiyorsanız sadece $ date1-> compareDate ($ date2) '' – Gordon

İlgili konular