Class
Intro
Een class is simpel weg een groep variabelen en functies die met die variabelen werken. In een goede class werkt ook alles samen. Bovendien kan, als je het goed doet, een class de overzicht van je broncode een stuk verbeteren.
Een class heeft in ieder geval de volgende syntax:
Code (php)
Een class roep je aan door er een object van te maken door middel van
of
Functie roep je aan door en variabelen door
Praktijk
Laten we eens kijken wat we kunnen doen.
Stel dat we een webwinkeltje hebben. Onze trouwe bezoeker heeft een digitale winkelwagen nodig. En dat is met classes prima te realiseren. Bekijk dit stukje van onze winkelwagen class hieronder eens. Merk trouwens op dat alle elementen van dezelfde klasse met de $this variabele worden aangesproken.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
class wagentje {
var $items = array();
function add_item($artikel_nummer, $aantal) {
if (array_key_exists($artikel_nummer, $this->items)) {
$this->item[ $artikel_nummer ] += $aantal;
} else {
$this->item[ $artikel_nummer ] = $aantal;
}
}
}
?>
class wagentje {
var $items = array();
function add_item($artikel_nummer, $aantal) {
if (array_key_exists($artikel_nummer, $this->items)) {
$this->item[ $artikel_nummer ] += $aantal;
} else {
$this->item[ $artikel_nummer ] = $aantal;
}
}
}
?>
Lekker overzichtelijk, efficiënt, en goed samenwerkend.
Waarschuwing
Dingen die je niet moet doen.
1. Je mag een class niet in meerdere bestanden of php blokken opsplitten. Dit zal dus niet werken:
Dit zal echter wel werken:
2. Je mag geen van je classes stdClass noemen.
Dit omdat deze class al gebruikt wordt door de Zend Engine van PHP.
3. Als je in een php versie lager dan 5 werkt mag je de __sleep en __wakeup functies niet declareren in je class
4. Je mag over het algemeen bij versies lager dan php 5 geen functies hebben die beginnen met __
Het is in ieder geval niet aan te raden.
5. Bij versies vóór php 5 moet je constante var initializers gebruiken.
Code (php)
« vorige pagina | volgende pagina »