Variabelen
Wat is een variabele
Een variabele is een stuk in het geheugen wat een waarde bevat, bijvoorbeeld een getal of een tekst. Ze beginnen in PHP altijd met een $, bijvoorbeeld:
<html>
<head>
</head>
<body>
<?php
$sTekst = 'Hallo wereld!';
echo $sTekst;
?>
</body>
</html>
Dit zal als output hebben:
Hallo wereld!
Datatypen
Een variabele heeft een bepaald datatype. Bijvoorbeeld een string, integer of boolean. Deze beschrijven wat voor een soort waarde de variabele heeft. Zo heeft een string een tekst als waarde en een integer een geheel getal.
Strings
Een string is, zoals hierboven al vermeld een stuk tekst. Als een string wordt gedefinieerd, staat de tekst tussen '' (enkele) of "" (dubbele). Het verschil met enkele en dubbele aanhalingstekens is dat enkele sneller zijn, maar geen variabelen kunnen zien. Bijvoorbeeld:
<?php
$sTekst = 'Hallo!';
echo $sTekst . '<br />';
$sTekst2 = "$sTekst";
echo $sTekst2 . '<br />';
$sTekst3 = '$sTekst2';
echo $sTekst3 . '<br />';
?>
Dit zal de volgende output geven:
Hallo!
Hallo!
$sTekst2
Zoals je kunt zien (bij de echo's) kun je variabelen wel plakken aan een string met enkele aanhalingstekens door middel van een punt. Dit kan overigens ook met dubbele aanhalingstekens. Het is ook mogelijk om nog een functie over de variabele te doen, bijvoorbeeld:
<?php
$sTekst = 'hallo WERELD';
echo strtoupper($sTekst) . '<br />' . ucfirst(strtolower($sTekst)) . '<br />' . $sTekst;
?>
Dit zal als output geven
HALLO WERELD
Hallo wereld
hallo WERELD
Integers en doubles
Een integer is een geheel getal en een double een kommagetal, ze worden als volgt en gedefinieerd:
<?php
$iInteger = 5; //Integer
$dDouble = 4.5; //Double
?>
In tegenstelling tot bijvoorbeeld C is het wel mogelijk om een double te vermenigvuldigen met een integer of zelfs met een string. Dit komt door de enorme flexibiliteit die PHP biedt op het gebied van datatypes.
Boolean
Een boolean is een heel simpel datatype, het is namelijk alleen waar (true) of onwaar (false). Het wordt al volgt gedefinieerd:
<?php
$bTrue = true;
$bFalse = false;
$bWaar = true;
?>
Zoals je kunt zien, staan er geen aanhalingstekens om true of false.
Arrays
Een array is eigenlijk een variabele met meerdere variabelen erin. Je kunt het vergelijken met een grote doos met meerdere kleine dozen erin. Hierbij stelt de grote doos de array voor en de kleine dozen de variabelen. Een voorbeeld:
<?php
$aArray[] = 'Hallo';
$aArray[] = ' ';
$aArray[] = 'wereld';
$aArray2 = array(1 => 'Hallo', ' ', 'Wereld');
$aArray3 = array("a" => array('A', 'B', 'C'), array(1, 2, 3), array(0.5, 1.5, 2.5), $aArray);
$aMens['sName'] = 'Thomas';
$aMens['iAge'] = 16;
echo $aArray[0] . $aArray[1] . $aArray3[3] . '<br />';
echo 'Naam: ' . $aMens['sName'] . '<br />Leeftijd: '. $aMens['iAge'] . '<br />';
echo $aArray3['a'][1] . $aArray3[2][0];
?>
Dit script geeft als output
Hallo wereld
Naam: Thomas
Leeftijd: 16
B0.5
Zoals je kunt zien zijn er meerdere datatypes voor elke waarde in de array mogelijk. Bij elke waarde hoort een sleutel (of key). De sleutel wordt tussen de [ en ] gezet. Met de functie array kan ook een array worden gemaakt. Bijvoorbeeld:
<?php
$aAlfabet = array(1 => 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
?>
Normaal gesproken zou $aAlfabet[0] de A en $aAlfabet[1] de B geven, maar omdat we 1 => voor 'A' hebben gezet, heeft 'A' de sleutel 1 in plaats van 0. Dit stuk code hadden we overigens een stuk korter kunnen maken met de range() functie.
<?php
$aAlfabet = range('A', 'Z');
?>
Object
Een object lijkt sterk op een array, omdat het ook meerdere waardes kan bevatten. Het grote verschil tussen een object en een array is echter dat een object ook functies kan bevatten en een instantiatie kan zijn van een klasse (zie OOP cursus). Het wordt wel een stuk anders aangeroepen namelijk;
<?php
$objMens->sName = 'Bart';
$objMens->iAge = 18;
?>
NB: In tegenstelling tot een array moet je altijd een key opgeven.
NULL
De NULL datatype is een datatype apart, omdat het leeg is. Als een variabele wordt opgevraagd en hij bestaat niet zal er ook altijd NULL worden gegeven. Een variabele kun je ook de NULL waarde geven met de volgende code
<?php
$null = NULL;
?>
Andere delen
- Inleiding
- Variabelen
- Loops
- Functies
- Superglobals