Les 07 — Classes (OOP-instap)
Gedrag en data bundelen in objecten: class, property, method, $this.
In deze les
Wat je gaat doen. Een WebPage-class die titel, content en footer toont. Extra: eigen extends; dieren die anders “praten”.
Wat je leert. Data en gedrag bij elkaar in een object, in plaats van losse variabelen en functies.
Komt aan bod. class, new, $this, constructor, private, extends.
Gewone opdracht
Opdracht 17
Maak class WebPage in 07/classes_webpage.php met o.a.:
__construct($title = "")showContent($content)showFooter()(sluit tags netjes)
En 07/show_webpage.php dat de class gebruikt (zoals in de slides).
Extra / variant
Extra A — Opdracht 18 Eigen extend-voorbeeld
Bedenk een class die je kunt extenden. Mag in woorden/pseudocode in 07/opdracht18.md óf uitgewerkt in PHP.
Extra B — Opdracht 19 Animals
Breid animal-classes uit met minstens 3 diersoorten + methods eats() (string) en barks() (boolean). Script 07/animal_talk.php: dieren als knoppen (POST); na klik tonen wat het dier “zegt” + nieuwe eigenschappen. Startpunt: test_animal.php.
Extra C ShoppingCart OOP
Bouw/nabouw ShoppingCart met private $items, addToCart, getCart en een show-script.
Check
- WebPage-script toont titel/content/footer via het object.
- Je kunt
$thisuitleggen.
Uitwerking (ná eigen poging)
WebPage (opdracht 17) en extra’s animals / winkelwagen-OOP. Eerst zelf bouwen.
Toon uitwerkingen
Klik een bestand om de bron te zien (of “Nieuwe tab”). PHP draait bij jou lokaal in XAMPP.
Opleveren
git add 07→ commit → push- Mail: les 07 klaar of hulp + repo-link