2011-12-02 15 views
5

मैं निम्नलिखित कोड टुकड़ा है:पीएचपी दिनांक समय कार्य

$now = '2011-12-01 22:32:33'; 
$datetime = '2011-12-01 00:07:27'; 


$nowObj = new DateTime($now); 
$datetimeObj = new DateTime($datetime); 

$diff = $datetimeObj->diff($nowObj); //leaving this in screws up the next line 

number_format(1134); //this becomes NaN 

जब मैंने इसे अन्य नंबर और गणित है कि मैं बाद में कर के साथ छेड़छाड़ न इस कोड के माध्यम से चल रहा हूँ और छोड़ $ diff = ... में लाइन, कोड में उदाहरण के लिए, मेरा नंबर_फॉर्मैट (1134); बाद में NaN बन जाता है। मैं PHP 5.3.1 के साथ एक एक्सएएमपीपी स्टैक का उपयोग कर रहा हूं। क्या यह एक बग है?

+0

mmm ... क्या आप "गड़बड़" कोड जोड़ सकते हैं? –

उत्तर

5

सका this be related, हम्म ...

तो में

ini_set("date.timezone","Europe/Rome"); 

जोड़ सकते हैं आप विंडोज़ पर हैं, मैं सुनिश्चित करता हूं कि समय क्षेत्र सेटिंग्स सही ढंग से सेट हो जाएं। Php.net पर टिप्पणियां विंडोज़ के तहत कुछ क्विर्क और बग्गी व्यवहार को इंगित करती हैं, यदि समस्या बनी रहती है तो आपकी तिथियों को अलग करने के लिए शायद वैकल्पिक विधि का उपयोग करने पर गंभीरता से विचार करें।

+0

कमाल, यह हमेशा केवल अगले ऑपरेशन को तोड़ता है, मुझे – cdub

+0

थोड़ी देर के लिए यह बग मिला है, इसलिए मैं आपको अधिक अंक दे सकता हूं – cdub

+0

कोई समस्या नहीं, वे उस पोस्ट में एक बगफिक्स को इंगित करते हैं, अगर फिक्स काम नहीं करता है या आपका PHP संस्करण अधिक हालिया है, कृपया उस बोर्ड पर अपनी खोज को वापस पोस्ट करने पर विचार करें, या इस पर कोई समस्या फिर से खोलें? यह PHP को बेहतर बनाने में मदद करेगा। या, कम से कम तारीख वस्तु, शायद। : ओ) – stefgosselin

0

यह लोकेल समस्या प्रतीत होता है। हेवी आपने php.ini में टाइमज़ोन सेट किया है?

[Date] 
date.timezone = Europe/Rome 

यूरोप/रोम मेरा समय क्षेत्र है;)

या आप भी अपने कोड