Referencje
PHP Manual

Przekazywanie przez referencje

Możesz przekazać zmienną do funkcji poprzez referencję, by funkcja mogła modyfikować swoje parametry. Skłania jest jak następuje:

<?php
function foo (&$zmienna)
{
    
$zmienna++;
}

$a=5;
foo ($a);
// $a jest równe 6 w tym momencie
?>
Weź pod uwagę to, że nie ma znaku odwoływania się przez referencję przy wywoływaniu funkcji - istnieje tylko w definicji funkcji. Sama definicja funkcji jest wystarczającym miejscem do zaznaczenia przekazywania argumentów przez referencję.

Przez referencję mogą być przekazywane następujące rzeczy:

Każde inne wyrażenie nie powinno być przekazywane przez referencję, ponieważ wynik takiego przekazania jest nieprzewidywalny. Dla przykładu, poniższe przykłady przekazywania przez referencję są niepoprawne:

<?php
function bar() // Zwróć uwagę na brak &
{
    
$a 5;
    return 
$a;
}
foo(bar());

foo($a 5); // Wyrażenie, nie zmienna
foo(5); // Stała, nie zmienna
?>
Te wymagania są dla PHP 4.0.4 i wyższych wersji.


Referencje
PHP Manual