【发布时间】:2017-06-20 03:03:06
【问题描述】:
我的数据库中有两个字段,一个start_date 和一个interval。根据这些值,我想计算其他日期。例如:
为简单起见,start_date 是 1 月 1 日。间隔为 3。这意味着每次日期月份应递增 3。最终结果应为:
01-01 // 1st of january
01-04 // 1st of april
01-07 // 1st of july
01-10 // 1st of october
另一个例子。 start_date 是 5 月 3 日。间隔为 6。最终结果应该是:
03-05 // 3rd of may
03-11 // 3rd of november
我尝试过这样的事情:
$interval = 3;
for ($i = 1; $i <= 12; $i += $interval)
{
echo $start_date->addMonths($i)->format('m-d'); // I'm using carbon
}
但结果是:
02-01
05-01
08-01
11-01
它首先从$i = 1 中添加1,然后开始实际循环,每次添加3。我不确定我应该为$i = 1 使用什么,或者这是否可以通过 for 循环来完成。有什么建议吗?
PS。开始日期可以是任何时间,间隔可以是 1 到 12 之间的任何时间。
【问题讨论】:
-
您的时间间隔不起作用。从一月到三月,有两个月的差异。但从 3 月到 6 月,从 6 月到 9 月,有 3 个月。
-
这只是我发布的一个例子,我做错了。
-
怎么了?我的代码?是的,这就是我在这里发帖的原因..
-
对不起,我错了,不是你。
标签: php for-loop while-loop