多次添加月份不起作用

时间:2016-12-23 11:55:25

标签: php date

为什么这段代码不能像计划一样工作?

代码:

$regDate = '2016-10-03';
    echo $date1 = date('m', strtotime('+4 month', strtotime($regDate))); echo '<br>';
    echo $date2 = date('m', strtotime('+4 month', strtotime($date1))); echo '<br>';
    echo $date3 = date('m', strtotime('+4 month', strtotime($date2))); echo '<br>';
    echo $date4 = date('m', strtotime('+4 month', strtotime($date3))); echo '<br>';

我回来了:

02 05 05 05

1 个答案:

答案 0 :(得分:1)

无法识别日期。您需要先计算日期,然后echo计算日期。试试 -

$regDate = '2016-10-03';
$date1 = strtotime('+4 month', strtotime($regDate)); 
echo date('m', $date1) . '<br>';
$date2 = strtotime('+4 month', $date1); 
echo date('m', $date2) . '<br>';
$date3 = strtotime('+4 month',$date2);
echo date('m', $date3) . '<br>';
$date4 = strtotime('+4 month', $date3);
echo date('m', $date4) . '<br>';

另一种简单的方法是 -

$regDate = strtotime('2016-10-03');
foreach(range(1, 4) as $val) {
   $regDate = strtotime('+4 month', $regDate);
   echo date('m', $regDate) . '<br>';
}

<强>输出

02
06
10
02