2013-03-25 39 views
-4

我很新的PHP和我試圖讓一個PHP網頁打印出的2013年像今年每一天:如何獲得PHP網頁打印每年的每一天(2013年)?

2013年1月1日
2013年1月2日
...... .....
...........
2013年12月31日

我一直在玩下面這段代碼的不同變化,但我不能獲取日期遞增不止一次。

$date = "2013-01-01"; 

for ($counter = 0; $counter <= 365; $counter++) { 

$newdate = strtotime('+1 day', strtotime($date)); 
$newdate = date('Y-m-j', $newdate); 

echo "$newdate<br>"; 

}

回答

1

這很簡單,當您使用strtotime(string),有問題。

其他重要的事情是,你需要將日期添加到$date或使用$日期strtotime(originalDate . '+'.$counter.' day')

1添加$counter不計。

<?php 

$date = "2013-01-01"; 

for ($counter = 0; $counter <= 364; $counter++) { 

    echo "$date<br>"; 

    $newdate = strtotime($date . '+1 day'); 
    $newdate = date('Y-m-j', $newdate); 
    $date = $newdate; 

} 

?> 

2計數器:

<?php 

$date = "2013-01-01"; 

for ($counter = 0; $counter <= 364; $counter++) { 

    $newdate = strtotime($date . '+'.$counter.' day'); 
    $newdate = date('Y-m-j', $newdate); 


    echo "$newdate<br>"; 
} 

?> 
1

你總是使用$date變量計算日期,但你並沒有改變它。你的循環將迭代366次(它從0開始,以365結尾)。首先回顯$date,或者您將從1月2日開始

$date = "2013-01-01"; 

for ($counter = 0; $counter < 365; $counter++) { 
    echo "$date<br>"; 
    $date = date('Y-m-j', strtotime('+1 day', strtotime($date))); 
}