첫번째로 PHP에서의 참조는 두개의 다른 변수가 동일한 내용(content)를 가리킬수 있게 한다. 다시말해 다음과 같은 문장이 있다면
이는 $a 와 $b 는 동일한 변수라고 할수 있다참고: $a 와 $b 는 이 문장에서는 완벽하게 동일한 변수이지만, $a 가 $b 를 가리킨다. 이는 다시말해 $a 와 $b 는 동일한 위치의 내용(content)를 지칭하고 있다.
함수에서도 변수에서 적용되는 것과 동일하게 적용된다. new 라는 연산자를 사용하여 참조를 돌려줄수 있다.(이는 PHP 4.0.4이후 버젼에 적용된다.)
참고: Unless you use the syntax above, the result of $bar = new fooclass() will not be the same variable as $this in the constructor, meaning that if you have used reference to $this in the constructor, you should use reference assignment, or you get two different objects.
참조로 할수 있는 두번째 것은 참조에 의한 변수의 전달이다. 이는 함수 내에서 생성된 지역변수와 함수를 호출한 영역의 변수가 동일한 값을 가리키게 할 수 있다. 아래의 예를 보자
$a 의 값은 6이 된다. 이는 함수 foo 내의 지역변수 $var 가 함수를 호출한 영역의 변수 $a와 동일한 값(content)을 참조하기 때문이다. 이에 대한 좀 더 자세한 설명은 참조에 의한 전달(passing by reference)을 확인해 보기 바란다.세번째로 참조로서 할수 있는 것은 참조에 의한 return(return by reference)이다.