这是我实际代码的粗略示例:
$start_date = '01/02/2003';
for($i=1 ; $i<3 ; $i++){
$expiration_date = $start_date->addMonth(12);
}
dump($expiration_date ); //outputs 01/02/2005
dd($start_date); //outputs 01/02/2005
我的问题是,为什么我的start_date变量也与expiration_date变量相同?
我需要循环结束时的开始日期,以保持其原始值为2003年2月2日。
答案 0 :(得分:3)
对Carbon对象运行addMonth
方法时,它将更新对象本身。
这是您需要做的:
$expiration_date = $start_date->copy()->addMonth(12);
copy
创建一个新的Carbon对象