Sve što trebate znati o osobinama u PHP-u



Ovaj će vam članak pružiti detaljno i sveobuhvatno znanje o osobinama u PHP-u, načinu na koji se primjenjuje i razlikama od nasljeđivanja.

Prije nego što shvatimo osobine u . Naučili smo o nasljeđivanju što znači da klasa može proširiti drugu klasu. Recimo, klasa B proširuje klasu A, a klasa C također proširuje klasu A što znači da funkciji definiranoj u klasi A mogu pristupiti klase B i klasa C, ali pretpostavimo ako su klasa B i klasa C nadjačale funkciju X i recimo da je klasa D produžujući obje klase.

traits-in-php





Iako ga više nasljeđa ne podržava PHP, ali pretpostavimo da bi to onda bio slučaj, Koja funkcija će se izvoditi u klasi D? Je li iz razreda B ili je iz razreda C? Dakle, ovo je zapravo problem višestrukog nasljeđivanja, zato ga PHP ne podržava, ali postoji mnogo slučajeva kada želite proširiti više klasa za ponovnu upotrebu koda.



servis sada tutorial alata za prodaju karata

Kada govorimo o jednom nasljednom problemu, klasa D proširuje klasu C, ali što ako želimo imati neke funkcije klase B u klasi D. Za to možemo koristiti osobine koje su uvedene u PHP 5.4. Jednostavno je i lako stvoriti. To je baš poput klase, ali samo za skupinu metoda i poput apstraktnih klasa, ne možete instancirati diskrete.

Osobine u PHP-u

Općenito, oni mogu definirati i statičke članove i statičke metode što pomaže programerima da slobodno ponovno koriste metode u nekoliko neovisnih klasa u različitim hijerarhijama klasa. Osobine izbjegavaju probleme povezane s višestrukim nasljeđivanjem, Mixinima, a također smanjuje složenost.



Sintaksa:

 

Osobine se na ovaj način mogu uključiti u druge razrede.

class Objavite {use Sharable} class Komentirajte {use Sharable}

Kako PHP ne dopušta više nasljeđivanja, Trait se koristi da bi se to prevladalo omogućujući nam ponovnu upotrebu iste funkcije u više klasa. Sljedeći primjer pokazuje rad svojstava u PHP-u.

func ()?>

Izlaz:

Prednost osobina

Osobine smanjuju dupliciranje koda istodobno sprječavajući komplicirano nasljeđivanje klase koje možda nema smisla u kontekstu vaše aplikacije.

To pomaže u definiranju jednostavnih osobina koje su jasne i sažete, a zatim se miješaju u tu funkcionalnost tamo gdje je to prikladno.

Osobine vs sučelja u PHP-u

Općenito, glavna razlika između sučelja i osobina u PHP-u je ta što osobine u osnovi definiraju stvarnu implementaciju svake metode unutar svake klase, pa isto sučelje implementiraju mnoge klase, ali različitog ponašanja, dok su osobine samo komadići ubačenog koda na satu iz PHP-a.

 

Ovim smo došli do kraja ovih osobina u članku o pythonu. Nadam se da ste naučili o osobinama, prednosti osobina i razlici između osobina i sučelja.

Ako smatrate da je ovaj PHP blog relevantan, pogledajte Edureka, pouzdane tvrtke za internetsko učenje s mrežom od više od 250 000 zadovoljnih učenika raširenih širom svijeta.

Imate pitanje za nas? Molimo vas da ga spominjete u odjeljku za komentare 'Svojstva u PHP-u', pa ću vam se javiti.