परिचय: PHP में तिथियों और समय के साथ काम करना क्यों आवश्यक है
तिथियों और समय के साथ काम करना वेब डेवलपमेंट में एक प्रमुख कार्य है। चाहे वह उपयोगकर्ता क्रियाओं को लॉग करना हो, आयु की गणना करना हो, कैलेंडर बनाना हो, डेटाबेस से टाइमस्टैम्प प्रोसेस करना हो या सदस्यता अवधि प्रबंधित करना हो — तिथियों के साथ काम करने के लिए विश्वसनीय उपकरणों के बिना काम नहीं चल सकता। PHP डेवलपर्स को इन उद्देश्यों के लिए शक्तिशाली और लचीले फंक्शन और क्लासेस का एक सेट प्रदान करता है।
इस लेख में, हम PHP में तिथियों और समय के साथ काम करने के मुख्य तरीकों पर विस्तार से चर्चा करेंगे: सरल date() और time() फंक्शन से लेकर DateTime क्लास का उपयोग करके ऑब्जेक्ट-ओरिएंटेड दृष्टिकोण तक। आप सीखेंगे कि तिथियों को कैसे फॉर्मेट करें, उनके बीच अंतर की गणना कैसे करें, टाइम ज़ोन के साथ कैसे काम करें और सामान्य गलतियों से कैसे बचें।
मुख्य फंक्शन: date(), time() और mktime()
PHP में वर्तमान तिथि या समय प्राप्त करने का सबसे सरल तरीका date() फंक्शन का उपयोग करना है। यह एक फॉर्मेट स्ट्रिंग और वैकल्पिक रूप से एक टाइमस्टैम्प लेता है। यदि टाइमस्टैम्प प्रदान नहीं किया गया है, तो वर्तमान समय का उपयोग किया जाता है।
<?php// वर्तमान तिथि "वर्ष-महीना-दिन" फॉर्मेट मेंecho date('Y-m-d'); // आउटपुट: 2025-04-10
// वर्तमान समय "घंटे:मिनट:सेकंड" फॉर्मेट मेंecho date('H:i:s'); // आउटपुट: 14:35:20
// पूर्ण तिथि और समयecho date('Y-m-d H:i:s'); // आउटपुट: 2025-04-10 14:35:20?>time() फंक्शन
time() वर्तमान Unix टाइमस्टैम्प (1 जनवरी 1970 से बीत चुके सेकंडों की संख्या) लौटाता है। यह गणनाओं और तुलनाओं के लिए उपयोगी है।
<?php$now = time();echo $now; // आउटपुट: 1744277720 (संख्या हर सेकंड बदलती है)
// 7 दिन बाद की तिथि$nextWeek = time() + (7 * 24 * 60 * 60);echo date('Y-m-d', $nextWeek); // आउटपुट: 2025-04-17?>mktime() फंक्शन
mktime() आपको किसी विशिष्ट तिथि और समय के लिए टाइमस्टैम्प बनाने की अनुमति देता है। यह तब सुविधाजनक होता है जब आपको दिए गए मापदंडों के लिए timestamp प्राप्त करने की आवश्यकता होती है।
<?php// 25 दिसंबर 2025, 10:00:00 के लिए टाइमस्टैम्प बनाएं$christmas = mktime(10, 0, 0, 12, 25, 2025);echo date('Y-m-d H:i:s', $christmas); // आउटपुट: 2025-12-25 10:00:00?>तिथियों को फॉर्मेट करना: मुख्य प्रतीक
नीचे दी गई तालिका में date() फंक्शन के लिए सबसे अधिक उपयोग किए जाने वाले फॉर्मेटिंग प्रतीक दिए गए हैं:
- d — महीने का दिन (01–31)
- m — महीने का क्रमांक (01–12)
- Y — वर्ष 4-अंकीय फॉर्मेट में (2025)
- H — घंटे 24-घंटे के फॉर्मेट में (00–23)
- i — मिनट (00–59)
- s — सेकंड (00–59)
- l — सप्ताह के दिन का पूरा नाम (Monday)
- F — महीने का पूरा नाम (April)
ऑब्जेक्ट-ओरिएंटेड दृष्टिकोण: DateTime क्लास
PHP 5.2 से शुरू करके, तिथियों के साथ काम करने के लिए DateTime क्लास का उपयोग करने की अनुशंसा की जाती है। यह बहुत अधिक क्षमताएं और एक सहज ज्ञान युक्त इंटरफ़ेस प्रदान करता है।
DateTime ऑब्जेक्ट बनाना
<?php// वर्तमान तिथि और समय$date = new DateTime();echo $date->format('Y-m-d H:i:s'); // आउटपुट: 2025-04-10 14:35:20
// विशिष्ट तिथि$birthday = new DateTime('1990-07-15');echo $birthday->format('d.m.Y'); // आउटपुट: 15.07.1990
// सापेक्ष फॉर्मेट के साथ$nextMonth = new DateTime('+1 month');echo $nextMonth->format('Y-m-d'); // आउटपुट: 2025-05-10?>तिथियों में संशोधन
modify() मेथड सापेक्ष स्ट्रिंग्स का उपयोग करके तिथि को आसानी से बदलने की अनुमति देता है।
<?php$date = new DateTime('2025-04-10');$date->modify('+10 days');echo $date->format('Y-m-d'); // आउटपुट: 2025-04-20
$date->modify('first day of next month');echo $date->format('Y-m-d'); // आउटपुट: 2025-05-01?>