PHP for循环不递增

PHP for循环不递增,php,Php,我有以下PHP代码: $todaysdate = date_create(); for ($i = date_sub(date_create(),date_interval_create_from_date_string("1 month")); $i <= $todaysdate; $i = date_add($i,date_interval_create_from_date_string("1 day"))) { $json['message'][] = $i; } 计数器$

我有以下PHP代码:

$todaysdate = date_create();
for ($i = date_sub(date_create(),date_interval_create_from_date_string("1 month")); $i <= $todaysdate; $i = date_add($i,date_interval_create_from_date_string("1 day"))) {
    $json['message'][] = $i;
}

计数器$i一点也不增加$我仍然停留在对象{date=2017-03-02 20:00:55.000000,时区类型=3,时区=Asia/Kolkata}

,正如RiggsFolly建议的那样,我将代码更新为以下内容:

$todaysdate = date_create();
for ($i = date_sub(date_create(),date_interval_create_from_date_string("1 month")); $i <= $todaysdate; $i = date_add($i,date_interval_create_from_date_string("+1 day"))) {
    $json['message'][] = $i->format('d-m-Y');
}

它正在工作。唯一的变化是行$json['message'][=$i->format'd-m-Y'

在for循环结束时尝试+1天。@shaun尝试过。不走运。它在phptester.net上对我有效,打印2月1日和2月1日的全部内容march@RobertPounder我得到了28次出现的$json,但28个数组中的所有日期都是2017-03-02 14:55:37.031447,这就是你想要的吗get@RobertPounder我使用的是PHP5。不幸的是,我的日期没有增加。与riggsfolly的情况相同。如何使用DatePeriod类,例如$todaysdate=date\u create$月=新的日期周期日期子$todaysdate,日期间隔从日期字符串1月开始创建,日期间隔从日期字符串1天开始创建,$todaysdate;每个$month作为$day{。。。