我怎样才能得到一个PHP网页打印的每一天的一年(2013)


How can I get a PHP webpage to print every day of the year (2013)?

我是PHP的新手,我正在尝试制作一个PHP网页,打印出2013年的每一天,如:

2013年1月1日
2013年1月2日
...........
...........
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>";

}

您总是使用$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)));
}

这很简单,当你使用strtotime( string )时,有问题。

另一个重要的事情是,您需要将日期添加到$date或将$counter添加到strtotime( originalDate . '+'.$counter.' day')

<?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 with counter:

<?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>";
}
?>