2013-04-29 41 views
-3

如何在M/Y格式中獲得6個月的日期? 我試着像這樣的,但沒有工作..如何在M/Y格式中獲得6個月的日期?

$regDate = "Jan/2013"; 
    $validTill = date('M/Y',strtotime("+6 months", strtotime($regDate))); 
+0

你是什麼意思,不工作? '$ validTill'的價值是什麼? – Osiris 2013-04-29 06:56:31

+0

您能否確定您總是以'MON/yyyy'格式獲得'$ regDate'? – Passerby 2013-04-29 06:56:42

+0

當前命令的輸出是什麼? – 2013-04-29 06:56:42

回答

1

最好的辦法是使用DateTime對象來轉換你的日期。

$regDate = "Jan/2013"; 
$myDateTime = DateTime::createFromFormat('M/Y', $regDate); 
$myDateTime->modify('+6 Months'); 
echo $myDateTime->format('M/Y'); 

CodePad DEMO.

注:它將爲PHP 5只> = 5.3.0支持。

0

轉換格式由strtotime是readeable。

$regDate = 'Jan/2013'; 
// this should look likes this: 2013-01-01 

比你的代碼將起作用。

,我認爲最好的日期存儲在YYYY-MM-DD格式(或unix timestamp,但在這種情況下,你應該使用正確的time-zone),當你表現出,將其轉換爲你需要顯示的內容格式。

相關問題