2010-03-05 3 views
6

매우 큰 PHP 변수를 복사 할 때의 성능에 대해 궁금합니다. 예를 들어 $ arr은 엄청난 배열입니다. $ arr2 = $ arr을 수행하면이 코드는 깊은 복사가되거나 Java에서와 같이 $ arr2에 대한 포인터 일뿐입니다. 미리 감사드립니다.PHP 변수를 복사 할 때의 성능 영향

+1

* (참고) * 복사 : http://www.research.ibm.com/trl/people/mich/pub/200901_popl2009phpsem.pdf – Gordon

답변

6

$arr2 = $arr 딥 복사본을 만듭니다. 하지만 실제 복사는 $ arr2가 수정되었을 때만 발생합니다 - PHP는 copy-on-write를 사용합니다.

복사본 대신 포인터를 사용하려면 $arr2 =& $arr을 사용하면 $ arr2가 $ arr을 참조합니다.

1

$ arr2 = & $ arr을 사용하는 경우;

$ arr.

관련 문제