DateTime修改当前日期以获取一年中的最后一天



假设我已经有了一个任意的开始日期:

$start = DateTime('2015-02-08')

我现在想克隆并修改它,以将其快速推进到年底:

$start = DateTime('2018-02-08');
$end = clone $start;
$end->modify('end of year');

显然end of year不起作用,但它说明了我正在努力实现的目标。我知道有很多方法可以解决这个问题,但我想知道是否有一种干净的方法可以在不从$startDateTime对象重新构建新日期的情况下修改它。

这也应该与modify()函数一起使用。

$start = new DateTime('2018-02-08');
$end = clone $start;
$end->modify('last day of december this year');
echo $end->format('Y-m-d');

只需使用$start将日期设置为12月31日即可获得年份:

$end->setDate($start->format("Y"), 12, 31);

尽管您也可以CCD_ 5。

最新更新