2013-08-16 9 views
40

को 1 साल जोड़ने मैं इस PHP कोड है:पीएचपी तिथि आज की

$end=date('Y-m-d'); 

मैं इसे आज की तारीख पाने के लिए उपयोग करते हैं, और मैं तारीख 5 साल, की तरह कुछ की जरूरत है भविष्य में:

$end=date('(Y + 5)-m-d'); 

मैं यह कैसे कर सकता हूं?

+0

संभव डुप्लिकेट http://stackoverflow.com/questions/5212240/add-one-year-to -डेटाइम-साथ-php) –

+0

2 9 फरवरी को एक लीप वर्ष में थोड़ी क्विर्की हो जाती है जब आप अचानक 1 मार्च प्राप्त करते हैं - –

उत्तर

99

साथ प्रयास करें:

$end = date('Y-m-d', strtotime('+5 years')); 
+0

नमस्ते, मुझे इस उदाहरण का उपयोग एक वर्ष में 1 वर्ष जोड़ने के लिए करना है, लेकिन मेरे पास पहले से ही चर हैं: '$ invoicedate = $ _POST ['invdate']; $ invdate = date ("ymd", strtotime ($ invoicedate)); तो मैं फिर एक तीसरी पंक्ति '$ देय = दिनांक ('वाईएम-डी', स्ट्रेटोटाइम ($ invdate, '+ 1 year') जोड़ दूंगा; '? – Adrian

1

को जोड़ने के लिए एक वर्ष के आज की तारीख के लिए निम्न का उपयोग करें:

$oneYearOn = date('Y-m-d',strtotime(date("Y-m-d", mktime()) . " + 365 day")); 
+1

और लीप वर्षों के लिए उपयोग करने की कोशिश करते समय ऐसी विषमताओं से अवगत रहें? – suspectus

+0

यह बहुत बहुत धन्यवाद था :) मैं कुछ क्षण बाद स्वीकार कर रहा हूं – Letter

+0

@Letter मेरे उत्तर को देखो - यह बहुत आसान है। – hsz

0

इस कोशिश,

$presentyear = '2013-08-16 12:00:00'; 

$nextyear = date("M d,Y",mktime(0, 0, 0, date("m",strtotime($presentyear)), date("d",strtotime($presentyear)), date("Y",strtotime($presentyear))+5)); 

echo $nextyear; 
12

संशोधित करना दिनांकोंbased on this post
strtotime() वास्तव में शक्तिशाली है और आप को बदलें/आसानी दिनांकों को बदलने के साथ यह रिश्तेदार भाव भी है की अनुमति देता है:

प्रक्रियात्मक

$dateString = '2011-05-01 09:22:34'; 
    $t = strtotime($dateString); 
    $t2 = strtotime('-3 days', $t); 
    echo date('r', $t2) . PHP_EOL; // returns: Thu, 28 Apr 2011 09:22:34 +0100 

दिनांक समय

$dateString = '2011-05-01 09:22:34'; 
    $dt = new DateTime($dateString); 
    $dt->modify('-3 days'); 
    echo $dt->format('r') . PHP_EOL; // returns: Thu, 28 Apr 2011 09:22:34 +0100 

स्ट्रेटोटाइम() पर जो सामान आप फेंक सकते हैं वह आश्चर्यजनक और बहुत मानव पठनीय है। अगले हफ्ते मंगलवार की तलाश में इस उदाहरण को देखें।

प्रक्रियात्मक

$t = strtotime("Tuesday next week"); 
    echo date('r', $t) . PHP_EOL; // returns: Tue, 10 May 2011 00:00:00 +0100 

दिनांक समय

$dt = new DateTime("Tuesday next week"); 
    echo $dt->format('r') . PHP_EOL; // returns: Tue, 10 May 2011 00:00:00 +0100 

ध्यान दें कि इन उदाहरणों से ऊपर अब समय के सापेक्ष लौटे जा रहा है। स्ट्रेटोटाइम() और डेटटाइम कन्स्ट्रक्टर लेने वाले समय प्रारूपों की पूरी सूची PHP Supported Date and Time Formats page पर सूचीबद्ध है।

एक अन्य उदाहरण है, आपके मामले के लिए उपयुक्त हो सकता है:based on this post

<?php 
    //How to get the day 3 days from now: 
    $today = date("j"); 
    $thisMonth = date("n"); 
    $thisYear = date("Y"); 
    echo date("F j Y", mktime(0,0,0, $thisMonth, $today+3, $thisYear)); 

    //1 week from now: 
    list($today,$thisMonth,$thisYear) = explode(" ", date("j n Y")); 
    echo date("F j Y", mktime(0,0,0, $thisMonth, $today+7, $thisYear)); 

    //4 months from now: 
    list($today,$thisMonth,$thisYear) = explode(" ", date("j n Y")); 
    echo date("F j Y", mktime(0,0,0, $thisMonth+4, $today, $thisYear)); 

    //3 years, 2 months and 35 days from now: 
    list($today,$thisMonth,$thisYear) = explode(" ", date("j n Y")); 
    echo date("F j Y", mktime(0,0,0, $thisMonth+2, $today+35, $thisYear+3)); 
    ?> 
6

उपयोग इस कोड को किसी निश्चित तिथि

echo date("Y-m-d H:i:s", strtotime("+1 years", strtotime('2014-05-22 10:35:10'))); //2015-05-22 10:35:10 
echo date("Y-m-d H:i:s", strtotime("+1 months", strtotime('2014-05-22 10:35:10')));//2014-06-22 10:35:10 
echo date("Y-m-d H:i:s", strtotime("+1 days", strtotime('2014-05-22 10:35:10')));//2014-05-23 10:35:10 
echo date("Y-m-d H:i:s", strtotime("+1 hours", strtotime('2014-05-22 10:35:10')));//2014-05-22 11:35:10 
echo date("Y-m-d H:i:s", strtotime("+1 minutes", strtotime('2014-05-22 10:35:10')));//2014-05-22 10:36:10 
echo date("Y-m-d H:i:s", strtotime("+1 seconds", strtotime('2014-05-22 10:35:10')));//2014-05-22 10:35:11 
साल या महीने या दिन या घंटे या मिनट या सेकंड जोड़ने के लिए

आप + से -

0

को बदलकर भी घटा सकते हैं कार के साथ यह बहुत आसान है बॉन। $date = "2016-02-16"; // Or Your date $newDate = Carbon::createFromFormat('Y-m-d', $date)->addYear(1);

+0

कार्बन वर्ग और इसकी विधियां किसी विशेष फ्रेम कार्य (लैरावेल) से संबंधित हैं और सवाल में हमें कोई फ्रेम कार्य नाम नहीं मिला है बल्कि इसे PHP दिनांक कार्यों का उपयोग करने के लिए कहा जाता है। मुझे लगता है कि यही कारण है कि आपको कोई अंगूठे नहीं मिला :) –

-1

इस प्रयास करें:

$yearnow= date("Y"); 
$yearnext=$yearnow+1; 
echo date("Y")."-".$yearnext; 
+0

काफी कुछ नहीं पूछा गया था। – wonce

0
 $date = strtotime($row['timestamp']); 
     $newdate = date('d-m-Y',strtotime("+1 year",$date)); 
की ([php के साथ दिनांक को एक वर्ष जोड़ने]
संबंधित मुद्दे