Takav koncept prosleđivanja nije isključivo vezan za PHP, ali PHP svakako ima svoj unikatan i jednostavan princip.
U PHP-u se sve od primitivnih tipova podataka prosleđuje sa vrednošću. Drugim rečima, sve osim Objekata instanciranih iz klasa.
To znači, ako nekoj funkciji / metodi proslediš običnu String promenljivu ili neki Array, koji potom biva izmenjen u scope-u te funkcije, vrednost neće biti promenjena na mestu odakle je prosleđena i neće uticati na global namespace ni na koji način.
U slučaju kada želiš suprotno, da proslediš referencu na tu promenljivu (njen pointer u memoriji), primitivne tipove prosleđuješ sa znakom & ispred naziva i to je sve.
Prosleđivanje konstruisanih objekata iz klasa se implicitno prosleđuje sa referencom (&), tako da o tome ne moraš da vodiš računa i neće se ništa desiti ako proslediš objekat takođe sa &, samo će sintaksički biti eksplicitno navedeno.
|