JAVA 에서 변수의 주소값을 가지고 있는 것처럼
PHP 에서는 &$ 를 통해 주소를 지시할 수 있다.
(JAVA 에서는 -> 를 지시자로 사용하고 있다.)
# 참조하지 않은 상태
$var1 = 1;
$var2 = $var1;
$var1 = 124;
echo $var2; // 1
# 참조한 상태
$var1 = 1;
$var2 = &$var1;
$var1 = 124;
echo $var2; // 124
오브젝트에서 참조주소를 사용하기 위해 set과 get에서 &를 사용해야 한다.
class Main {
public $value = 333;
public function &getValue(){
return $this->value;
}
}
$obj = new Main;
$num = &$obj->getValue();
echo $num; // 333
$obj->value = 9;
echo $num; // 9
Reference
참조1