Php DateTime函数在修改新变量时影响原始变量
在此脚本中:Php DateTime函数在修改新变量时影响原始变量,php,datetime,Php,Datetime,在此脚本中: <?php $original = new DateTime('2000-01-01'); $new = $original; $new->add(new DateInterval('P10D')); echo $original->format('Y-m-d') . "\n"; ?> 我希望$original不会被更改。然而,10天确实也被添加到这个变量中。为什么呢?这似乎没有任何意义 $new=$original只需将$original中的相同引用
<?php
$original = new DateTime('2000-01-01');
$new = $original;
$new->add(new DateInterval('P10D'));
echo $original->format('Y-m-d') . "\n";
?>
我希望
$original
不会被更改。然而,10天确实也被添加到这个变量中。为什么呢?这似乎没有任何意义 $new=$original
只需将$original
中的相同引用分配给$new
。相反,你想复制一份
$new = clone $original;
$new=$original
只需将$original
中的相同引用分配给$new
。相反,你想复制一份
$new = clone $original;