Was Referenzen leisten

PHP Referenzen erlauben es, zwei Variablennamen sich auf den gleichen Variableninhalt beziehen zu lassen. Das heisst im folgenden Beispiel, dass sich $a und $b auf dieselbe Variable beziehen:


$a =& $b 
     

Anmerkung: $a und $b sind hier gleichwertig, und $a ist nicht nur ein Zeiger auf $b oder umgekehrt, sondern $a und $b zeigen auf den selben Inhalt.

Eine weitere Einsatzmöglichkeit von Referenzen ist die Übergabe von Parametern an eine Funktion mit pass-by-reference. Hierbei beziehen sich der lokale Variablenname als auch der Variablenname der aufrufenden Instanz auf denselben Variableninhalt:


function foo (&$var) {
    $var++;
}

$a=5;
foo ($a);
     

Nach der Ausführung hat $a den Wert 6, da sich in der Funktion foo der Variablenname $var auf denselben Variableninhalt bezieht wie $a in der aufrufenden Instanz (hier das Hauptprogramm).

Daneben besteht die Möglichkeit aus Funktionen heraus Werte mit return by-reference zurückzugeben.