2014-03-05 88 views
0

我需要在以下格式的循環寫入到輸出最近30天,從昨天:通過環路過去30天

2014-02-02 
2014-02-03 
2014-02-04 
... 
2014-03-04 

我想我需要使用這樣的循環:

for ($i=0; $i<=30; $i++) { 
    echo $date; 
} 

而且我知道我能找到一個開始日期在30天前

$startDate = date('Y-m-d', time() - (60 * 60 * 24 * -31)); 

不知道熱把所有這些碎片拼湊起來(下午卡福EINE剝奪)...

+0

不錯的辦法,不是每一天= 60 * 60 * 24 – 2014-03-05 21:44:39

+0

我會考慮使用一個'DateInterval'它不會有像的東西飛躍問題年份。看起來你只需要在循環中用'-1 * $ i'替換'-31'來創建每天的日期。 – Jasper

+0

爲什麼不把它們存儲在陣列中回溯30天..並打印數組返回到前​​面 – Ljubisa

回答

4

使用strtotime()

for($i = 30; $i > 0; $i--) 
{ 

    echo date("Y-m-d", strtotime("-$i days")); 

} 
+0

這是完美的,謝謝。 – santa

+0

很高興我能幫到你 – David

相關問題