2016-03-30 42 views
-2

我想根據我給定的日期得到所有月份的日期。 如: - 銀行票據generating.i試圖與DateTimemodify但如何didnt現在能夠得到我的result.as它那裏得到這種結果如何根據給定的日期得到功能日期PHP

進入2017-1-31 結果

2017-2-28 
2017-3-28 

,但我想得到

2017-2-28 
    2017-3-31 

那樣。我怎麼能實現這個。任何人都可以幫助我。

回答

2

您可以date喜歡嘗試 -

echo date('Y-m-t', strtotime("+1 MONTH", strtotime("2017-1-31"))); 

t返回一個月的天數。在你的情況下,它需要一些操縱。它應該是這樣的 -

$date = "2017-1-31"; 
$day = date('d', strtotime($date)); 
if(in_array($day, array(29, 30, 31))) { // last days of month 
    // Adding 1 month to 31st Jan would produce date of March. So extracting month and year then the date 
    $month = date('Y-m', strtotime("+5 DAY", strtotime($date))); 
    echo $month . '-' . date('t', strtotime($month)); 
} else { 
    echo date('Y-m-d', strtotime("+1 MONTH", strtotime($date))); 
} 
+0

它給人的'2017-03-31'不'2017-02-28' – kosala

+0

對不起@sougata仍然giveing了'2017-03-31' – kosala

+1

@kosala。檢查更新的代碼。需要一些操作。 –