You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

每3次迭代为日期增加一年的PHP代码实现求助

正确实现每3次迭代后为日期增加一年的PHP代码

你的原代码问题在于判断条件$i % 2 == 0,这会在第1、3、5次迭代(对应$i=0、2、4)时就增加年份,不符合每完成3次迭代才加一年的需求。

要实现每完成3次迭代后增加一年,需要调整判断逻辑:当迭代次数是3的倍数时执行加年操作,以下是两种可行的实现方式:

方式一:计数从1开始

$lang = ["PHP", "JAVA", "Ruby", "C", "C++", "Perl"];
$date = Carbon::now();
$i = 1;
foreach($lang as $l){
    // 每完成3次迭代(即第3、6次迭代时)增加一年
    if($i % 3 == 0){
       $date->addYear();
    }
   $i++;
}

方式二:计数从0开始

$lang = ["PHP", "JAVA", "Ruby", "C", "C++", "Perl"];
$date = Carbon::now();
$i = 0;
foreach($lang as $l){
    $i++;
    // 每完成3次迭代时增加一年
    if($i % 3 == 0){
       $date->addYear();
    }
}

以上两种方式都会在完成第3次和第6次迭代后各增加一年,最终日期会比初始日期多2年,符合你的需求。

内容的提问来源于stack exchange,提问作者user15187482

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 03:55:20