为什么在这段代码中我的DateTime对象被引用复制似乎?
这是我的代码:
<?php
date_default_timezone_set('UTC');
$dt1 = new \DateTime('2015-03-15');
$dt2 = $dt1;
$dt2 = $dt2->modify('-1 year');
echo $dt1->format('c') . PHP_EOL;
echo $dt2->format('c');
?>
Run Code Online (Sandbox Code Playgroud)
我在期待:
2015-03-15T00:00:00+00:00
2014-03-15T00:00:00+00:00
Run Code Online (Sandbox Code Playgroud)
但我得到了这个:
2014-03-15T00:00:00+00:00
2014-03-15T00:00:00+00:00
Run Code Online (Sandbox Code Playgroud)
这是因为这条线
$dt2 = $dt1;
Run Code Online (Sandbox Code Playgroud)
变量被复制,对象被引用.
有关示例的答案,请参阅此处 - /sf/answers/438004241/
您应该能够使用克隆修复此问题
归档时间: |
|
查看次数: |
4725 次 |
最近记录: |