2011-11-14 11 views
5

मैं यह देखना चाहता हूं कि Zend_Date डेटाटाइम उसी दिन हैं या नहीं। मैं उसे कैसे कर सकता हूँ?दो Zend_Date ऑब्जेक्ट्स के दिनांक भागों की तुलना कैसे करें?

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

उसी दिन सोमवार, मंगलवार इत्यादि ... या उसी तारीख को छोड़कर, उसी समय? मैं किसी भी मामले में, ज़ेंड की एक तुलना विधि है। http://framework.zend.com/manual/en/zend.date.basic.html, आप जो भी प्रारूप चाहते हैं उसे निकाल सकते हैं। – Matt

+0

संभावित भ्रम के लिए खेद है, मेरा मतलब है कि समय को छोड़कर, * नहीं * सप्ताह के उसी दिन! – Benjamin

+0

उदाहरण के उदाहरण से मुझे क्या लगता है, बस सुनिश्चित करें। इसके अलावा आपको आवश्यक स्थिरांक की एक सूची भी मिलती है। http://framework.zend.com/manual/en/zend.date.constants.html – Matt

उत्तर

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'; 
} 

इसके अलावा एक sidenote पर Comparing Dates with Zend Date

पर अध्याय देखते हैं, मैं दृढ़ता से अगर आप Zend_Date के लिए की जरूरत है सत्यापित करने के लिए प्रोत्साहित करते हैं। इसका उपयोग न करें क्योंकि यह जेडएफ का हिस्सा है। क्या Zend_Date के अधिकांश तेजी से और अधिक देशी DateTime के साथ आराम से प्राप्त किया जा सकता है के रूप में अच्छी तरह से:

$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'; 
} 

टिप्पणियों के बाद संपादित करें
आप चाहे वह एक ही तिथि बस

कर की तुलना करना चाहते हैं
$date1->compareDate($date2) 
+0

वास्तव में जो मैं खोज रहा था ('तुलना()' और 'बराबर()' केवल -AFAIK- दिन के दिन की तुलना करें महीने, पूर्ण तिथि भाग नहीं)। धन्यवाद! – Benjamin

+0

क्षमा करें, मुझे आपके जवाब को स्वीकार्य रूप से स्वीकार करना था, यह ध्यान देने के बाद कि यह वास्तव में केवल दिन की तुलना करता है, तारीख (+ माह + वर्ष) नहीं। अगले दिन उसी दिन भी सच हो गया। – Benjamin

+1

@ बेंजामिन गलती, निश्चित रूप से ऐसा इसलिए होता है क्योंकि आपने ** उसी दिन ** के लिए कहा था, ** ** उसी तारीख ** नहीं। यदि आप एक ही तारीख चाहते हैं तो बस '$ date1-> तुलना करेंडेट ($ date2) ' – Gordon

संबंधित मुद्दे