我想写一个方法,我可以给一个时间段(比如:每年,每月......),它会根据给定的这段时间返回一个更早的日期。
这是我的代码:
public function callRuleCeilling($period)
{
$start = new \DateTime();
switch ($period) {
case 'weekly':
$dateInterval = 'P7D';
break;
case 'monthly':
$dateInterval = 'P1M';
break;
case 'quaterly':
$dateInterval = 'P3M';
break;
case 'half-yearly':
$dateInterval = 'P6M';
break;
case 'yearly':
$dateInterval = 'P1Y';
break;
default:
$dateInterval = 'P1Y';
}
$start->sub(new \DateInterval($dateInterval));
return $start
}
我的示例问题:
如果我将开始日期放在一年中的一年中。我希望它在年初停止。
而且我希望在每月期间(在月初停止)等...
它是否存在这样做的PHP函数?我找不到它。
请突出我。