"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > महीने के आखिरी दिन को बढ़ाए बिना PHP में किसी तारीख में महीने कैसे जोड़ें?

महीने के आखिरी दिन को बढ़ाए बिना PHP में किसी तारीख में महीने कैसे जोड़ें?

2024-11-01 को प्रकाशित
ब्राउज़ करें:819

How to Add Months to a Date in PHP Without Exceeding the Last Day of the Month?

PHP में महीने के आखिरी दिन को बढ़ाए बिना तारीखों में महीने जोड़ना

किसी तारीख को संशोधित करना और महीनों को जोड़ना PHP में एक सीधा काम है . हालाँकि, यह सुनिश्चित करना कि परिणामी तारीख महीने के आखिरी दिन से आगे न बढ़े, थोड़ी चुनौती पेश करती है।

इसे संबोधित करने के लिए, हम एक दृष्टिकोण प्रस्तुत करते हैं जो तारीख जोड़ने में सटीकता सुनिश्चित करता है:

function add($date_str, $months)
{
    $date = new DateTime($date_str);
    
    // Capture the starting day of the month
    $start_day = $date->format('j');
    
    // Add the specified number of months
    $date->modify(" {$months} month");

    // Extract the resulting day of the month
    $end_day = $date->format('j');
    
    // Check if the resulting day differs from the original day
    if ($start_day != $end_day)
    {
        // If they are different, it means the month changed, so we adjust the date
        $date->modify('last day of last month');
    }
    
    return $date;
}

यह फ़ंक्शन दो पैरामीटर लेता है: एक स्ट्रिंग के रूप में प्रारंभिक तिथि और जोड़ने के लिए महीनों की संख्या। यह डेटटाइम ऑब्जेक्ट बनाकर और महीने का शुरुआती दिन निकालकर शुरू होता है। फिर महीनों की निर्दिष्ट संख्या जोड़कर तारीख को संशोधित किया जाता है। जोड़ने के बाद, यह महीने के परिणामी दिन को पुनः प्राप्त करता है और इसकी तुलना मूल दिन से करता है। यदि दिन अलग-अलग हैं, तो यह इंगित करता है कि महीना बदल गया है, इसलिए तारीख को पिछले महीने के आखिरी दिन में सुधारा जाता है।

इस फ़ंक्शन की उपयोगिता प्रदर्शित करने के लिए, यहां कुछ उदाहरण दिए गए हैं:

$result = add('2011-01-28', 1); // 2011-02-28
$result = add('2011-01-31', 3); // 2011-04-30
$result = add('2011-01-30', 13); // 2012-02-29
$result = add('2011-10-31', 1); // 2011-11-30
$result = add('2011-12-30', 1); // 2011-02-28

इस फ़ंक्शन का उपयोग करके, आप बाद के महीनों में ओवररन की चिंता के बिना आत्मविश्वास से महीनों को तारीखों में जोड़ सकते हैं।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3