Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
复制php变量对性能的影响_Php_Performance - Fatal编程技术网

复制php变量对性能的影响

复制php变量对性能的影响,php,performance,Php,Performance,只是想知道复制非常大的php变量对性能的影响。例如,假设$arr是一个巨大的数组。如果我使用$arr2=$arr,那么这是一个深度副本还是$arr2只是一个指向$arr的指针,就像在Java中一样?提前感谢。$arr2=$arr创建深度副本。但实际的复制只在修改$arr2时发生——PHP使用写时复制 如果您想要一个“指针”而不是副本,请使用$arr2=&$arr,这使得$arr2成为$arr的引用。如果您使用$arr2=&$arr 它将引用$arr PHP中的一般规则是不要创建引用,除非您需要它

只是想知道复制非常大的php变量对性能的影响。例如,假设$arr是一个巨大的数组。如果我使用$arr2=$arr,那么这是一个深度副本还是$arr2只是一个指向$arr的指针,就像在Java中一样?提前感谢。

$arr2=$arr
创建深度副本。但实际的复制只在修改$arr2时发生——PHP使用写时复制


如果您想要一个“指针”而不是副本,请使用
$arr2=&$arr
,这使得$arr2成为$arr的引用。

如果您使用$arr2=&$arr


它将引用$arr

PHP中的一般规则是不要创建引用,除非您需要它们提供的功能。否则引用只会使代码变慢

(参考)用PHP语言编写时复制: