在php中创建通过引用传递的变量的实际副本

时间:2012-08-15 16:49:36

标签: php

实际上,我有一个函数,其中某个变量作为参数通过引用传递。我想在我的函数中创建这个变量的实际副本而不是引用。我怎样才能在php中完成这个?

1 个答案:

答案 0 :(得分:1)

PHP中的引用不能用作指针; PHP中的实际变量是zval结构,它们包含引用计数的信息,变量是引用等等。这对您来说是透明的,当您使用引用时,重要的是您正在修改原始对象,并可能使用更少的内存。

因此,如果您想使用变量的新副本,为了避免修改,您可以这样做:

$new_copy = $copy;

或$ copy是一个对象:

$new_copy = clone $copy;