Alles wat u moet weten over eigenschappen in PHP



Dit artikel geeft je een gedetailleerde en uitgebreide kennis van eigenschappen in PHP, hoe het wordt geïmplementeerd en de verschillen met overerving.

Voordat we eigenschappen in begrijpen . We hebben geleerd over overerving, wat betekent dat een klasse een andere klasse kan uitbreiden. Laten we zeggen dat klasse B klasse A uitbreidt en klasse C ook klasse A uitbreidt, wat betekent dat de functie gedefinieerd in klasse A toegankelijk is voor klasse B en klasse C, maar stel dat klasse B en klasse C functie X hebben overschreven en laten we zeggen dat klasse D is uitbreiding van beide klassen.

traits-in-php





Hoewel meerdere overervingen het niet ondersteunen door PHP, maar stel dat dit een geval zou zijn, welke functie zal klasse D uitvoeren? Komt het uit klasse B of komt het uit klasse C? Dit is dus eigenlijk een probleem met meerdere overerving, daarom ondersteunt PHP het niet, maar er zijn veel gevallen waarin u meer dan één klasse wilt uitbreiden voor herbruikbaarheid van code.



Als we het hebben over een enkelvoudig overervingsprobleem, breidt klasse D klasse C uit, maar wat als we enkele functies van klasse B in klasse D willen hebben. Hiervoor kunnen we eigenschappen gebruiken die zijn geïntroduceerd in PHP 5.4. Het is eenvoudig en gemakkelijk te maken. Het is net als een klasse, maar alleen voor een groep methoden en net als abstracte klassen kun je geen discretie instantiëren.

eindelijk en finaliseer in java

Eigenschappen in PHP

Over het algemeen kunnen ze zowel statische leden als statische methoden definiëren, wat ontwikkelaars helpt methoden vrijelijk te hergebruiken in verschillende onafhankelijke klassen in verschillende klassenhiërarchieën. Eigenschappen voorkomen problemen die verband houden met meerdere overervingen, Mixins en verminderen ook de complexiteit.



Syntaxis:

 

Op deze manier kunnen eigenschappen in andere klassen worden opgenomen.

class Post {use Sharable} class Comment {use Sharable}

Omdat PHP meerdere overervingen niet toestaat, wordt Trait gebruikt om dit te verhelpen door ons in staat te stellen dezelfde functionaliteit in meerdere klassen te hergebruiken. Het onderstaande voorbeeld toont de werking van eigenschappen in PHP.

func ()?>

Uitgang:

Voordeel van eigenschappen

Eigenschappen verminderen codeduplicatie en voorkomen tegelijkertijd gecompliceerde klasse-overerving die misschien niet logisch is in de context van uw toepassing.

Dit helpt om eenvoudige eigenschappen te definiëren die duidelijk en beknopt zijn en die functionaliteit vervolgens waar nodig te combineren.

Eigenschappen versus interfaces in PHP

Over het algemeen is het belangrijkste verschil tussen de interfaces en eigenschappen in PHP dat de eigenschappen in feite de daadwerkelijke implementatie van elke methode binnen elke klasse definiëren, dus dezelfde interface wordt geïmplementeerd door veel klassen maar met verschillend gedrag, terwijl eigenschappen slechts stukjes code zijn die worden geïnjecteerd. in een les in PHP.

 

Hiermee komen we aan een einde aan deze eigenschappen in het python-artikel. Ik hoop dat je iets hebt geleerd over Traits, Advantage of Traits en het verschil tussen Traits en Interfaces.

Als je deze PHP-blog relevant vond, bekijk dan de door Edureka, een vertrouwd online leerbedrijf met een netwerk van meer dan 250.000 tevreden leerlingen verspreid over de hele wereld.

marionet versus chef versus havenarbeider

Heeft u een vraag voor ons? Vermeld het alstublieft in het commentaargedeelte van 'Traits in PHP' en ik neem zo spoedig mogelijk contact met u op.