添加到现有日期1年和删除1天的最佳方法是什么.所以,如果今天的日期是04/09/2013,我想要新的约会03/09/2014.还有每4年发行366天而不是365年的问题,当然如果开始日期是01/09/2013它应该改变月份,那么结束日期应该是31/08/2014.请帮忙.我的日期字段看起来像那样.我想我必须用mktime或时间做些什么吗?
$renewalDate = date('d F Y', strtotime($rows['CoverStartDate']));
Run Code Online (Sandbox Code Playgroud)
DateTime()
占闰年:
// PHP 5.2+
$dt = new DateTime($rows['CoverStartDate']);
$dt->modify('+1 year');
$dt->modify('-1 day');
$renewalDate = $dt->format('d F Y');
Run Code Online (Sandbox Code Playgroud)
要么:
// PHP 5.3+
$dt = new DateTime($rows['CoverStartDate']);
$dt->add(new DateInterval('P1Y'));
$dt->sub(new DateInterval('P1D'));
$renewalDate = $dt->format('d F Y');
Run Code Online (Sandbox Code Playgroud)
要么:
// PHP 5.5+
$renewalDate = (new DateTime('04/09/2013'))->add(new DateInterval('P1Y'))
->sub(new DateInterval('P1D'))
->format('d F Y');
Run Code Online (Sandbox Code Playgroud)