PHP में तारीखों वाली स्ट्रिंग्स की तुलना
मान लीजिए कि हमारे पास निम्नलिखित टेक्स्ट फॉर्मेट में दो तारीखें हैं:
<?php
$date1 = '2020-12-01';
$date2 = '2019-12-01';
?>
ऐसे में इन तारीखों की तुलना करके यह पता किया जा सकता है कि इनमें से कौन सी तारीख बड़ी है:
<?php
var_dump($date1 > $date2);
?>
इन तारीखों की तुलना किस प्रकार होती है? बात यह है कि हमारी तारीखें स्ट्रिंग्स होती हैं और PHP उनकी तुलना स्ट्रिंग्स के रूप में करता है। यानी कि यह पहले दोनों तारीखों के पहले अक्षरों की तुलना करता है: यदि वे समान हैं, तो PHP दूसरे अक्षरों की तुलना करता है, और इसी तरह आगे भी, जब तक कि कोई अंतर नहीं मिल जाता। इस तथ्य के कारण कि हमारे फॉर्मेट में तारीख पहले वर्ष, फिर महीना, और उसके बाद दिन के क्रम में होती है, ऐसी तुलना संभव है।
यह भी महत्वपूर्ण है कि तारीखें एक ही फॉर्मेट में हों। हमारे मामले में तारीख के हिस्सों को अलग करने वाला वर्ण हाइफन है। यह, निश्चित रूप से, जरूरी नहीं है। उदाहरण के लिए, डॉट्स लगाए जा सकते हैं:
<?php
$date1 = '2020.12.01';
$date2 = '2019.12.01';
?>
या फिर सेपरेटर्स को हटाया भी जा सकता है:
<?php
$date1 = '20201201';
$date2 = '20191201';
?>
मुख्य बात यह है कि तुलना सही हो, इसके लिए क्रम इस प्रकार होना चाहिए: पहले वर्ष, फिर महीना, फिर दिन।
एक कोड लिखें जो नीचे दी गई दो तारीखों की तुलना करे और एक संदेश प्रिंट करे कि उनमें से कौन सी बड़ी है:
$date1 = '2020-11-30';
$date2 = '2020-12-01';