>  기사  >  백엔드 개발  >  PHP는 언제 값이나 참조로 전달됩니까?

PHP는 언제 값이나 참조로 전달됩니까?

藏色散人
藏色散人원래의
2019-05-22 10:34:225382검색

변수는 기본적으로 항상 값으로 할당됩니다. 즉, 표현식의 값이 변수에 할당되면 원래 표현식 전체의 값이 대상 변수에 할당됩니다. 이는 예를 들어 한 변수의 값이 다른 변수에 할당될 때 한 변수의 값을 변경해도 다른 변수에 영향을 미치지 않는다는 것을 의미합니다.

PHP는 언제 값이나 참조로 전달됩니까?

PHP는 변수에 값을 할당하는 또 다른 방법인 참조 할당도 제공합니다. 즉, 새 변수는 원래 변수를 단순히 참조(즉, "별칭" 또는 "가리키는") 것입니다. 새 변수를 변경하면 원래 변수에 영향을 미치며 그 반대의 경우도 마찬가지입니다. 참조에 의한 할당을 사용하려면 할당할 변수(소스 변수) 앞에 & 기호를 추가하기만 하면 됩니다.

객체는 기본적으로 참조로 전달됩니다. 더 큰 데이터의 경우 참조로 전달하는 것이 더 좋으며, 이는 메모리 오버헤드를 절약할 수 있습니다.

참고:

값으로 전달: 함수 내에서 값을 변경하면 함수 외부에서 무시됩니다.

참조로 전달: 함수 내에서 값을 변경하면 함수 외부에서도 이러한 수정 사항이 반영됩니다.

응용 시나리오: 값으로 전달할 때 PHP는 값을 복사해야 하지만 참조로 전달은 값을 복사할 필요가 없으므로 참조로 전달은 일반적으로 큰 문자열이나 객체에 사용됩니다.

장점과 단점:

값으로 전달할 때 PHP는 값을 복사해야 합니다. 큰 문자열과 개체의 경우 비용이 많이 듭니다. 참조로 전달하면 값을 복사할 필요가 없으므로 성능 향상에 좋습니다.

위 내용은 PHP는 언제 값이나 참조로 전달됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.