Referenciakénti paraméterátadás

A függvényeknek változókat referenciaként is át lehet adni, így a függvény tudja módosítani a hívó környezetben definiált értéket. Ez a következőképpen oldható meg:

<?php
function ize (&$valtozo)
{
    
$valtozo++;
}

$a = 5;
ize( $a );
// $a itt 6
?>

Figyeld meg, hogy nincs referencia jelzés a függvényhíváskor, csak a függvény definíciójában. Ez önmagában elég a megfelelő működéshez.

A következők szerepelhetnek referenciakénti paraméterátadásban:

Minden más kifejezést kerülni kell referencia szerinti paraméterátadáskor, mivel az eredmény határozatlan lesz. A következő példákban a referencia szerinti paraméterátadás hibának minősül:

<?php
function valami() // Figyeld meg, nincs & jel!
{
    
$a = 5;
    return
$a;
}
ize( valami() );

ize( $a = 5 ); // Kifejezés, nem változó
ize( 5 ); // Konstans, nem változó
?>

Ezek a meghatározások a PHP 4.0.4 és későbbi verzióira érvényesek.