A PHP referenciák lehetőséget adnak arra, hogy egy értékhez két nevet lehessen rendelni. Ez azt jelenti, hogy a következő programban:
az $a és $b nevek ugyanarra az értékre hivatkoznak.Megjegyzés: Az $a és a $b nevek teljesen egyenrangúak. Nem arról van szó, hogy az $a a $b-re mutat, vagy fordítva, hanem arról, hogy az $a és a $b név ugyanannak az értéknek két elnevezése.
Ugyanez a forma használható az olyan függvényeknél, amelyek referenciát adnak vissza, vagy a new operátor használatakor (a PHP 4.0.4 és későbbi verziókban):
Megjegyzés: Ha nem használod az & -t, akkor az osztálypéldány másoláta adódik át. A $this objektumon belüli használatával ugyanazon az objektumpéldányon dolgozol. Ha az értékadás során az & -t elhagyod, akkor az objektumról másolat készül és a $this már ezen a másolaton fog dolgozni. Van, amikor ez nem kívánatos, mivel általában egy példányon szeretnénk dolgozni a jobb memóriahasználat és teljesítmény érdekében.
Az @ operátort nem lehet együtt használni a &new utasítással, amivel el lehetne nyomni a konstruktorban fellépő hibákról történő jelzéseket. Ez a jelenlegi Zend motor egyik korlátja, és ezért fordítási hibát (parse error-t) fog jelezni, ha ilyet talál.
A a referenciákat paraméterátadáskor is lehet használni. Ebben az esetben a meghívott függvény egy lokális változója és a hívó környezet egy változója ugyanazt az értéket fogja képviselni. Például:
Ez a kód az $a változó értékét 6-ra állítja. Ez azért történik meg, mivel az ize függvényben a $valtozo egy referencia a $a változó értékére. A részletes leírást a referenciakénti paraméterátadás c. fejezetben olvashatod.A referenciák harmadik felhasználási módja a refencia visszatérési-érték.