[PHP메모] 참조 연산자
메모/PHP 2016. 4. 17. 14:35
728x90
반응형
참조 연산자
대입 연산자와 결합해서 쓸 수 있는 참조 연산자인 '&'에 대해 알아보겠습니다. 한 변수 값을 다른 변수에 대입하면 첫 번째 변수의 값을 복사하여 메모리 어딘가에 저장합니다.
$a = 5;
$b = $a;
이렇게 하면 $a의 값을 복사하여 $b에 저장하게 됩니다. 만약 $a의 값이 변경되어도 $b의 값에는 전혀 영향을 미치지 않습니다.
$a = 7; // $b는 여전히 5이다.
이때 '&' 연산자를 사용하면 좀 달라집니다.
$a = 5;
$b = &$a;
$a = 7; // $a와 $b 모두 7이다.
참조는 교묘하게 사용할 수 있습니다. 참조는 포인터라기보다는 별명에 가깝습니다. $a와 $b는 같은 메모리 위치를 가리키고 있습니다. unset()을 사용하여 둘의 관계를 떼어놓을 수 있습니다.
unset($a);
이와 같은 연산은 $b의 값(7)을 바꾸지는 못하지만, $a와 메모리에 저장되어 있는 7이라는 값사이의 연결을 제거합니다.
반응형
'메모 > PHP' 카테고리의 다른 글
[PHP메모] 오류 억제 연산자 (0) | 2016.04.17 |
---|---|
[PHP메모] 삼항 연산자 (0) | 2016.04.17 |
[PHP메모] 단항 연산자 (0) | 2016.04.13 |
[PHP메모] 피연산자 (0) | 2016.04.13 |
[PHP메모] 상수, define() 함수 (0) | 2016.04.13 |