PHP日期月增量不超过月的最后一天?

PHP日期月增量不超过月的最后一天?,php,Php,我希望在开始日期和结束日期之间的每个月的同一天。只是,如果一天中的某个月对某个月无效,则需要该月的最后一天。有剧本吗?。我们所做的是 $startdate='2010-01-30'; $enddate='2011-01-30'; while ($startdate <= $enddate) { echo date('Y-m-d', $startdate ) . "\n";

我希望在开始日期和结束日期之间的每个月的同一天。只是,如果一天中的某个月对某个月无效,则需要该月的最后一天。有剧本吗?。我们所做的是

$startdate='2010-01-30';
          $enddate='2011-01-30';
            while ($startdate <= $enddate)
             { 
              echo date('Y-m-d', $startdate ) . "\n";
              $startdate = strtotime('+1 month', $startdate);/// for case of feb 28 days last date it should disply as it skips it
            }
    _2012-12-30_
2013-01-30
**2013-02-28**
2013-03-30
2013-04-30
2013-05-30
2013-06-30
2013-07-30
2013-08-30
2013-09-30
2013-10-30
2013-11-30
_2013-12-30_

循环使用
for
并向开始日期添加
$i
个月,而不是不断向运行值添加一个月。这样,它就不会跳到第28(或29)天,因为二月从三月开始。

使用mktime函数转换时间戳中的日期,在itTry中增加month参数以使用
date
函数的
参数,该参数将返回每个月的天数。@anrdrius先生,如果我将循环更改为for,这意味着相同,对于每个,执行while,但输出不符合预期。
    _2012-12-30_
2013-01-30
**2013-02-28**
2013-03-30
2013-04-30
2013-05-30
2013-06-30
2013-07-30
2013-08-30
2013-09-30
2013-10-30
2013-11-30
_2013-12-30_