2012-01-18 12 views
22

संभव डुप्लिकेट:
PHP last day of the monthमहीने के आखिरी दिन प्राप्त करें?

वहाँ किसी महीने में दिनों की संख्या (या अंतिम दिन संख्या) प्राप्त करने के लिए $date->getMonthDays() या $date->getLastDayOfMonth() PHP में जैसे किसी भी समारोह है?

$start = new DateTime('2012-02-01'); 
$end = clone $start; 

// Interval = last day of the month minus current day in $start 
$interval = $start->getLastDayOfMonth() - intval($start->format('j')); 
$end->add(new DateInterval('P' . $interval . 'D')); 

संपादित करें: धन्यवाद, बंद करने के लिए वोट दिया है, यह एक नकली है, पूछने के लिए खेद ...

+0

मैं PHP पता नहीं है मार्च में पिछले महीने की तारीख पाने के लिए

echo date("Y-m-t", strtotime("-1 month")) ; echo date("Y-m-1", strtotime("-1 month")) ; 

, लेकिन आम तौर पर आसान है अगले महीने के बाद -1 –

+1

'(डेटटाइम ओबीजे) -> प्रारूप ('टी'); 'आपको उस महीने में दिनों की संख्या देगी। –

+1

@EricYin यह एक अच्छा विचार है, अगर कोई मूल PHP फ़ंक्शन नहीं है, तो मैं इसे आज़मा दूंगा, बहुत बहुत धन्यवाद। – gremo

उत्तर

5

t आप चालू माह में दिनों की कुल संख्या देता है। j आपको महीने का वर्तमान दिन देता है।

modify का उपयोग करना और format से कुछ घटाव - डेटाटाइम के दौरान, आप महीने के अंत तक पहुंच सकते हैं।

$date = new DateTime(); 
$lastDayOfMonth = $date->modify(
    sprintf('+%d days', $date->format('t') - $date->format('j')) 
); 
26

यह आप पहले दिन मिल द्वारा अंतिम दिन प्राप्त कर सकते हैं, 3 रिटर्न

2011-02-28 
2011-02-1 
+0

उत्कृष्ट, धन्यवाद! –

संबंधित मुद्दे