【发布时间】:2019-02-27 01:32:24
【问题描述】:
我想从给定的日期和时间获取下个月的日期和时间。这是我现在拥有的:
$dt = new DateTime('2019-01-31');
for ($i=0; $i < 10; $i++) {
$dt->add(new DateInterval('P1M'));
$final = $dt->format('Y-m-d');
echo $final."\n";
}
// Output:
// 2019-03-03
// 2019-04-03
// 2019-05-03
// 2019-06-03
// 2019-07-03
问题是,它将日期从“31”更改为“02”,因为在 2 月,没有第 31 天。所以在没有例如 30 或 31 的月份中,我想跳过那些月,但日子不变。
所以这里应该是预期的输出:
// 2019-03-31
// 2019-05-31
// 2019-07-31
// 2019-08-31
// 2019-10-31
我该怎么做?
【问题讨论】:
-
一个非常好的格式和格式的 SO 问题,立即切入主题,并展示了自己的方法、输出和预期结果。我希望所有贡献者都这样做。 +1
-
@Quasimodo'sclone 哈哈谢谢!在我发布问题后我有点意识到这一点:P