Programiranje: Čemu Služi Pseudo-varijabla $ This U PHP-u I Kako Je Koristiti?

Sadržaj:

Programiranje: Čemu Služi Pseudo-varijabla $ This U PHP-u I Kako Je Koristiti?
Programiranje: Čemu Služi Pseudo-varijabla $ This U PHP-u I Kako Je Koristiti?

Video: Programiranje: Čemu Služi Pseudo-varijabla $ This U PHP-u I Kako Je Koristiti?

Video: Programiranje: Čemu Služi Pseudo-varijabla $ This U PHP-u I Kako Je Koristiti?
Video: Раздел, неделя 5 2024, Maj
Anonim

Kada uče PHP protumačeni jezik, početnici web programeri nailaze na takav koncept kao pseudo varijabla $ this. Njegova svrha i pravila upotrebe u kodu vrlo se razlikuju od svih ostalih varijabli, pa se vrijedi detaljno zaustaviti na ovom pitanju.

Programiranje: Čemu služi pseudo-varijabla $ this u PHP-u i kako je koristiti?
Programiranje: Čemu služi pseudo-varijabla $ this u PHP-u i kako je koristiti?

Klase i predmeti

Objektno orijentirano programiranje (OOP), koje se u PHP-u koristi od verzije 5, pruža programeru mogućnost stvaranja bilo kojeg broja instanci iste klase, nazvane objektima; u ovom slučaju svaka kreirana kopija dobiva svoje ime. Objekt može uzimati podatke koji se nazivaju argumenti, obrađivati ih funkcijama i vraćati rezultat. Bilo koja funkcija klase može pristupiti svojim svojstvima ne izravno, već samo putem konstrukcije svojstva object->, pa se postavlja pitanje: kako napisati takav univerzalni kod koji će omogućiti bilo kojem generiranom objektu rad s podacima, bez obzira na njegovo ime? Razmotrite primjer prikazan na slici 1.

Slika
Slika

Ovaj kod deklarira klasu koja ima varijablu (svojstvo) i dvije funkcije (metode), od kojih je jedna konstruktor, tj. automatski se pokreće kada se kreira novi objekt. Posao funkcije konstruktora je dodijeliti podatke svojstvu koje je primljeno argumentom kada se objekt kreira. Metoda, kada je pozvana, vraća vrijednost svojstva.

Dalje, razmotrite redove 12 i 13. U njima se kreiraju dvije nove instance klase, od kojih jedna prima broj 5 kao argument, a druga - 7. Te vrijednosti funkcija konstruktora dodjeljuje varijabli (svojstvo) kojem je moguće pristupiti samo unutar klase. Svaki stvoreni objekt dodjeljuje se varijablama i shodno tome (tačnije, ove varijable primaju samo reference na navedene objekte, ali to trenutno nije važno). Sada vrijednosti svojstva možete dobiti jednostavnim pozivom metode (redovi 15 i 16).

Dodjeljivanje $ ove pseudo-varijable

Imajte na umu: imamo dva različita objekta s potpuno istim metodama.

I tu pseudovarijabilna dolazi u pomoć. Njegovo ime može se s engleskog prevesti kao "ovo", tj. označava (je veza) do objekta u kojem se nalazi. Kao rezultat, redak 5 for može se čitati kao "dodijeli vrijednost argumenta svojstvu objekta", red 8 - "vrati vrijednost svojstva objekta". Jer, varijabla će automatski poprimiti odgovarajuću vrijednost.

Uslovi korištenja $ this

Preporučuje se: