Cursussen/Courses Codesnippets     Top 
PHP - Taal onderdelen


1. PHP code
1. De PHP code wordt ingelast tussen de HTML regels. Je voorziet dan een begin-tag (<?php) en een eind-tag (?>). Alle regels moet je dan afsluiten met een puntkomma!
2. Je kunt ook code tussen HTML-tags zetten. Je mag de puntkomma dan weglaten. Je kunt ook de verkorte notatie gebruiken (bvb. <?=$kleur?>)
3. De pagina bestaat uit alleen maar PHP code en de HTML code wordt gegenereerd met een uitvoercommando echo of print.
De aanduiding “\n” zorgt voor een nieuwe lijn in de HTML broncode.
<?php
	require "navigatie.php";
	$kleur = "w3-blue";
?>
<link rel="stylesheet" type="text/css" href="w3.css">
<div class="<?php echo $kleur ?>">Een witte tekst op een blauwe achtergrond.</div>

<?php
echo "<p>Een eerste paragraaf.</p>\n";


2. Commentaar
Je kunt commentaar van één regel voorzien door de regel met de twee schuine strepen (//) of met het hekje (#) te laten beginnen. De tekst die achter deze tekens staat wordt genegeerd door de PHP-parser.
Commentaar van meerdere regels kan je intypen tussen de tekens (/*) en (*/).
Je kunt commentaar achteraan een regel met PHP code zetten maar dan bestaat de kans dat als de regel lang is, je de commentaar niet meer ziet staan.
<?php
	// testprogramma
/*
	toepassing: test
	bestand: test.php
	nota: 
*/


3. Variabelen
Een variabele moet in PHP met een $-teken beginnen en het eerste karakter moet een letter (A-Z, a-z) of een liggend streepje (_) zijn. Bij lange namen worden de woorden meestal gescheiden door een liggend streepje. De variabele namen zijn ook hoofdletter gevoelig; $Var is niet hetzelfde als $var. Daarom wordt in de meeste programma’s enkel gebruik gemaakt van kleine letters.
Je kunt ook elk nieuw woord in een variabelenaam met een hoofdletter laten beginnen. Zorg er voor dat je de naamgeving consequent toepast!
$afbeelding_url = "afbeeldingen\afbeelding_01.jpg";
$aantal_paginas = ceil($aantal_records / $records_per_pagina);


4. Variabele types
Variabelen moeten niet vooraf gedeclareerd worden. Ze krijgen een type toegekend bij het eerste gebruik.
Zo kan je een integer, een decimaal getal of een string toekennen aan een variabele. Een “booleaanse” variabele kan je de waarde True of False toekennen.
Bij het toekennen van een waarde aan een string kan je gebruik maken van de enkele aanhalingstekens (') of de dubbele aanhalingstekens ("). Gebruik steeds de dubbele aanhalingstekens omdat dan de escape-tekens (bvb. \n, \t, \\, …) juist worden geïnterpreteerd en de inhoud van de variabelen wordt getoond!
Meer voorbeelden vind je in de PHP-handleiding.
$teller = 1;
$naam = "Bill Gates";
$percent = 0.5;

$actief = true;
if ($actief == true) {
	echo "de record wordt getoond.";
}


5. Variabele scope
Een variabele is gekend binnen eenzelfde PHP-pagina en in de pagina’s die erna met de commando’s include of require worden opgeroepen. De variabelen die in een functie worden gebruikt zijn enkel gekend binnen die functie.
Het gebruik van globale variabelen is vanaf de PHP-versie 4.2.0 niet meer mogelijk omdat de configuratie instelling “register_globals” standaard de waarde “Off” heeft gekregen. Je kunt deze instelling wijzigen maar dat wordt afgeraden. Trouwens alle hostingproviders zetten deze instelling toch op “Off”.
Een uitzondering op deze regel vormen de “superglobals”. Dit zijn variabelen die een globale scope hebben (bvb. $_POST, $_GET, $_REQUEST, …).
<?php
if (isset($_GET['id'])) {
	echo "De record id is " . $_GET['id'];
}
$naam = htmlspecialchars($_POST["naam"]);


6. Expressies
Als je een variabele een waarde geeft (bvb. $a = 5;) dan gebruik je een expressie. Hierbij maak je ook gebruik van een operator (bvb. =).
Er zijn verschillende operatoren: rekenkundige, toekenning, bit, vergelijking, verhoging, verlaging, logische, string, array en type operatoren. Van elke operator soort vind je in de PHP handleiding voorbeelden.
Reguliere expressies.
Als je in de programma’s die je gaat schrijven een bepaalde tekenreeks wil controleren op geldigheid (bvb. een geldig E-mail adres of een URL) dan gebruik je een patroon. Dit patroon en de te controleren tekenreeks geef je als argumenten mee aan de functie ereg(“patroon”, “tekenreeks”) of de functie eregi(“patroon”, “tekenreeks”). De ereg() functie maakt een onderscheid tussen hoofdletters en kleine letters. De eregi() functie doet dat niet. De ereg() en eregi() functies kunnen niet meer gebruikt worden in PHP versie 7. Als alternatief kan je gebruik maken van preg_match().
Meer informatie vind je uiteraard ook terug in de PHP handleiding. Een zoekopdracht in de handleiding brengt je naar de juiste omschrijving van de functie.
Een voorbeeld van een E-mail controle:
<?php
$input = "mijn.email@host";
echo $input . "<br>";
$result = preg_match("/^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z.]{2,5}$/", $input );
if ($result) {
	echo "geldig e-mail adres<br>";
} else {
	echo "ONgeldig e-mail adres<br>";
}