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.

Hosting by: Hurra Communications Sp. z o.o.
Generated: 2007-01-26 18:02:56