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
?>
A következők szerepelhetnek referenciakénti paraméterátadásban:
- Változó, például ize($a)
- New utasítás, például ize(new osztaly())
-
Egy függvény által visszaadott referencia, például:
<?php
function &valami()
{
$a = 5;
return $a;
}
ize(valami());
?>
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ó
?>