⊗ppOpBsInr 1 of 107 menu

Inleiding tot OOP in PHP

Nu gaan we ons bezighouden met het bestuderen van OOP in PHP. Laten we een voorbeeld uit het echte leven bekijken, en het dan overbrengen naar PHP.

Laten we een auto als voorbeeld nemen. Hij heeft wielen, een kleur, een carrosserietype, een cilinderinhoud en zo verder. Bovendien kan de bestuurder hem commando's geven: rijden, stoppen, rechtsaf slaan, linksaf, enzovoort.

We kunnen zeggen dat er een bepaalde klasse auto's bestaat, met gemeenschappelijke eigenschappen (ze hebben allemaal wielen en aan allemaal kunnen commando's worden gegeven).

Een specifieke auto, die op straat staat - dat is een vertegenwoordiger van deze klasse, of, met andere woorden, een object van deze klasse. Alle objecten van deze klasse hebben eigenschappen: aantal wielen, kleur, carrosserietype en methoden: rijden, stoppen, rechtsaf slaan, linksaf.

Met andere woorden, de klasse zelf is een blauwdruk, volgens welke in de fabriek auto's worden gemaakt. Een object is de auto zelf, gemaakt volgens deze blauwdrukken.

In PHP wordt een klasse gemaakt met het sleutelwoord class, gevolgd door de naam van deze klasse. Laten we een klasse Car maken:

<?php class Car { // hier code, dus de PHP-blauwdruk van de auto } ?>

Laten we nu in onze blauwdruk specificeren dat elke auto, gemaakt volgens deze blauwdruk, een eigenschap voor kleur en een eigenschap voor de hoeveelheid brandstof zal hebben.

Om dit te doen, schrijven we binnen de klasse de eigenschap $color en de eigenschap $fuel:

<?php class Car { // Definieer eigenschappen (in wezen variabelen van de klasse): public $color; // kleur van de auto public $fuel; // hoeveelheid brandstof } ?>

Laten we nu de methoden van onze klasse maken. In PHP worden methoden, vergelijkbaar met gewone functies, gedeclareerd met het sleutelwoord function, waarvoor het sleutelwoord public wordt geschreven.

Zoals eerder vermeld, kan onze auto rijden, kan hij draaien, kan hij stoppen. Laten we de bijbehorende methoden in onze klasse maken:

<?php class Car { public $color; // kleur van de auto public $fuel; // hoeveelheid brandstof // Commando rijden: public function go() { // een of andere PHP code } // Commando draaien: public function turn() { // een of andere PHP code } // Commando stoppen: public function stop() { // een of andere PHP code } } ?>

We hebben de blauwdruk van onze auto gemaakt. Nu moeten we naar de fabriek gaan en een object van deze klasse maken (dus een specifieke auto).

In PHP wordt dit gedaan met het sleutelwoord new, waarna de klassenaam wordt geschreven:

<?php new Car; ?>

Echter, als je alleen maar een object van de klasse maakt - leidt dat nergens toe (het is hetzelfde als, bijvoorbeeld, een array declareren en deze nergens opslaan). We hebben een variabele nodig om dit object op te slaan.

Laten we deze variabele $myCar noemen - laten we het door ons gemaakte object erin opslaan:

<?php $myCar = new Car; ?>

Na het maken van de auto kan je zijn eigenschappen benaderen. De toegang daartoe gebeurt via het pijltje ->. Laten we de eigenschappen van ons object instellen:

<?php $myCar = new Car; // beveel de fabriek om een auto te maken // Stel de eigenschappen van het object in: $myCar->color = 'red'; // schilder hem rood $myCar->fuel = 50; // tank brandstof ?>

Klaar, onze auto is gemaakt, geverfd en getankt. Nu kunnen we hem commando's geven via de methoden van deze auto.

De toegang tot methoden gebeurt ook via het pijltje, maar, in tegenstelling tot een eigenschap, volgen na de methodenaam ronde haakjes. Laten we commando's geven aan ons object:

<?php $myCar->go(); $myCar->turn(); $myCar->stop(); ?>
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren