strtotime
, strptime
या DateTime
कक्षा पर देखें।
strtotime
उदाहरण:
$timestamp = strtotime('1/1/2011');
प्रत्येक समारोह में यह चेतावनी है है। उदाहरण के लिए, strtotime
कहा गया है कि के लिए दस्तावेज़: मीटर में
तिथियां/दि/व या DMY प्रारूपों विभिन्न घटकों के बीच विभाजक को देखकर disambiguated कर रहे हैं: यदि विभाजक एक स्लैश (है /), तो अमेरिकी एम/डी/वाई माना जाता है; जबकि अगर विभाजक डैश (-) या एक बिंदु (।) है, तो यूरोपीय डी-एम-वाई प्रारूप माना जाता है।
तुम भी preg_match
उपयोग करने वाले सभी 3 भागों पर कब्जा और mktime
उपयोग कर अपने खुद टाइमस्टैम्प बनाने के लिए कर सकता है।
preg_match
उदाहरण:
if (preg_match('/^(?P<day>\d+)[-\/](?P<month>\d+)[-\/](?P<year>\d+)$/', '1/1/2011', $matches))
{
$timestamp = mktime(0, 0, 0, ($matches['month'] - 1), $matches['day'], $matches['year']);
}
स्रोत
2011-06-28 02:47:35
आपका रेगेक्स डीडी-एमएम-वाई प्रारूप प्रारूप मानता है, जो मुझे यकीन नहीं है। – StackOverflowNewbie
@StackOverflowNewbie - आपके प्रश्न ने कहा: "ध्यान दें कि ज्यादातर मामलों में, यह डीडी मिमी yyyy के प्रारूप में विभिन्न delimiters के साथ होगा।" तो मैं उस प्रारूप के साथ गया लेकिन आप मूल प्रारूप में 'elseif' कथन जोड़ सकते हैं जो विभिन्न प्रारूपों की जांच करता है और 'regex' को अधिक विशिष्ट बना देता है (यानी \ d + एक पैटर्न का उपयोग करें जो महीने के लिए 0-12 और 0 का वर्णन करता है दिनों के लिए -31)। बेशक, 1/2/13 के मामले में, यह बताना असंभव है कि कौन सा है जब तक आप प्रारूप को नहीं जानते। –