मैंने देखा है कि strtotime()
एक अजीब तरह से यूनिक्स टाइमस्टैम्प संभालती है, और किसी को भी जानता है ऐसा क्यों है मैं उत्सुक था:स्ट्रिंगटाइम() के लिए इसे समझने के लिए '@' द्वारा यूनिक्स टाइमस्टैम्प को उपसर्ग करने की आवश्यकता क्यों है?
var_export(strtotime('1330725042')); // false
var_export(strtotime('@1330725042')); // 1330725042
क्यों strtotime()
वापसी false
जब एक यूनिक्स टाइमस्टैम्प दिया (जब तक कहा टाइमस्टैम्प @
लगाया जाता है)?
यह एक लाइब्रेरी विधि के आंतरिक से है जिसे मैंने बनाया है जिसका उद्देश्य एक अज्ञात प्रारूप प्रारूप को "टाइममेम्प" में "हल" करना है। एक नंगे strtotime()
का उपयोग इस मामले में सहायक नहीं है क्योंकि आने वाले मूल्य वास्तव में टाइमस्टैम्प होने पर गलत परिणाम देता है।
मैंने टाइमस्टैम्प-जैसे मान के लिए एक स्पष्ट जांच करने के लिए लाइब्रेरी विधि को फिर से काम किया है और इसे अनमोडिफाइड वापस कर दिया है, इसलिए ... क्या हम कहेंगे, अब इस प्रश्न के लिए कोई व्यावहारिक अनुप्रयोग नहीं है; मैं सिर्फ उत्सुक हूँ।
क्योंकि प्रलेखन ऐसा कहता है :) http://www.php.net/manual/en/datetime.formats.compound.php मुझे नहीं लगता कि एक पूर्णांक वैध दिनांक/समय प्रारूप – Tchoupi
+1 है वह मैथ्यू लिंक। मुझे लगा कि उस पर दस्तावेज़ थे * कहीं *। – Josh
धन्यवाद। मुझे वास्तव में कोई जानकारी नहीं थी कि यूनिक्स टाइमस्टैम्प वैध PHP डेटटाइम प्रारूप हो सकता है। – Tchoupi