PHP bietet unter foreach eine Möglichkeit an, die Werte des originalen Arrays direkt anzusprechen. Programmierer die von dieser Möglichkeit nicht bescheid wissen, bauen dann oftmals Konstrukte wie:

foreach ($array as $key => $value) {
	$array[$key] = funktionsname($array[$key]);
}

Bei diesem Beispiel wird der Wert des Arrays einer Funktion übergeben und danach überschrieben. Dabei ginge es viel einfacher:

foreach ($array as &$value) {
	$value = funktionsname($value);
}

Hier wird eine Referenz auf “value” gesetzt. Eine Referenz ist eine weitere Variable die auf den gleichen Wert im Speicher zeigt. Im Umkehrschluss wird der Speicher auch erst dann wieder freigegeben, sobald keine Variable mehr auf den Wert zeigt.