PHP heeft veel ingebouwde functies om strings (tekst) te bewerken. Dit zijn de belangrijkste:
trim($tekst) – verwijdert spaties aan het begin en eindestrtolower($tekst) – maakt alle letters kleine lettersstrtoupper($tekst) – maakt alle letters hoofdlettersucfirst($tekst) – maakt de eerste letter een hoofdletterstrlen($tekst) – geeft het aantal tekens terugsubstr($tekst, start, lengte) – knip een stuk tekst uit<?php
$naam = " jan de vries ";
$schoon = trim($naam); // "jan de vries"
$hoofd = strtoupper($schoon); // "JAN DE VRIES"
$lengte = strlen($schoon); // 12
$eerste = substr($schoon, 0, 3); // "jan"
?>
Let op: In de oefeningen hieronder hoef je GEEN <?php en ?> tags te typen. Het platform regelt dit automatisch. Je typt alleen de PHP-code zelf.
Maak een variabele $naam met de waarde " jan " en gebruik trim() om de spaties te verwijderen. Sla het resultaat op in $schoneNaam en toon het met echo.
Maak een variabele $stad met de waarde "amsterdam" en maak alle letters hoofdletters met strtoupper(). Toon het resultaat met echo.
Maak een variabele $titel met de waarde "WELKOM OP MIJN WEBSITE" en maak alle letters kleine letters met strtolower(). Toon het resultaat.
Maak een variabele $voornaam met de waarde "pieter" en maak de eerste letter een hoofdletter met ucfirst(). Toon het resultaat.
Maak een variabele $wachtwoord met de waarde "Geheim123" en toon de lengte ervan met strlen().
Maak een variabele $zin met de waarde "PHP is geweldig" en knip de eerste 3 tekens eruit met substr(). Toon het resultaat.
Maak een variabele $tekst met de waarde "Hallo Wereld". Gebruik substr() om het woord "Wereld" eruit te halen (start bij positie 6) en toon het resultaat.
Schrijf een functie schoonNaamOp($naam) die een naam opschoont: eerst trim(), dan strtolower(), dan ucfirst(). De functie geeft het resultaat terug. Test met echo schoonNaamOp(" jANNEKE "); — dit moet "Janneke" tonen.
Maak een variabele $artikel met de waarde "Dit is een heel lang artikel over PHP programmeren en webontwikkeling". Maak een teaser door de eerste 30 tekens te pakken met substr() en er "..." achter te plakken. Toon het resultaat.
Met strpos() kun je zoeken waar een stuk tekst voorkomt in een string. Met str_replace() kun je tekst vervangen.
strpos($tekst, $zoek) – geeft de positie terug waar $zoek begint (of false als het niet gevonden is)str_replace($zoek, $vervang, $tekst) – vervangt alle voorkomens van $zoek door $vervang<?php
$zin = "Ik hou van PHP en PHP is leuk";
$positie = strpos($zin, "PHP"); // 11
$nieuw = str_replace("PHP", "JavaScript", $zin);
// "Ik hou van JavaScript en JavaScript is leuk"
?>
Let op: strpos() geeft false terug als de tekst niet gevonden is. Gebruik !== false om dit te controleren, want positie 0 is ook een geldige positie!
Maak een variabele $tekst met de waarde "Welkom bij PHP". Gebruik strpos() om de positie van "PHP" te vinden en toon het resultaat.
Maak een variabele $email met de waarde "jan@voorbeeld.nl". Controleer met strpos() of er een "@" in zit. Als dat zo is, toon "Geldig formaat", anders "Ongeldig formaat".
Maak een variabele $bericht met de waarde "De kat zit op de mat". Vervang "kat" door "hond" met str_replace() en toon het resultaat.
Maak een variabele $url met de waarde "mijn eerste blog post". Vervang alle spaties door streepjes ("-") met str_replace() en toon het resultaat. Dit maakt een URL-vriendelijke slug.
Schrijf een functie bevat($tekst, $zoekwoord) die true teruggeeft als $zoekwoord in $tekst voorkomt, anders false. Test met: als bevat("Ik leer PHP", "PHP") waar is, toon "Gevonden!".
Maak een variabele $reactie met de waarde "Dit is een stom bericht". Maak een array $scheldwoorden met de waarden "stom", "dom", "lelijk". Gebruik een foreach-loop en str_replace() om elk scheldwoord te vervangen door "***". Toon het opgeschoonde bericht.
Schrijf een functie maakSlug($titel) die een titel omzet naar een URL-slug: eerst strtolower(), dan spaties vervangen door "-" met str_replace(). Test met echo maakSlug("Mijn Eerste Blog Post"); — dit moet "mijn-eerste-blog-post" tonen.
Maak een variabele $bestandsnaam met de waarde "foto_vakantie.jpg". Gebruik strpos() om de positie van het punt (".") te vinden. Gebruik daarna substr() om de extensie (alles na het punt) op te halen en toon "Extensie: jpg".
PHP heeft krachtige functies voor datums en tijden:
date($formaat) – geeft de huidige datum/tijd in het gewenste formaattime() – geeft het huidige Unix-timestamp (seconden sinds 1 januari 1970)Veelgebruikte formaattekens voor date():
| Teken | Betekenis | Voorbeeld |
|-------|-----------|-----------|
| d | Dag (met voorloopnul) | 01-31 |
| m | Maand (met voorloopnul) | 01-12 |
| Y | Jaar (4 cijfers) | 2026 |
| H | Uur (24-uurs) | 00-23 |
| i | Minuten | 00-59 |
| s | Seconden | 00-59 |
| l | Dag van de week (voluit) | Monday |
| F | Maand (voluit) | January |
<?php
echo date("d-m-Y"); // bijv. "24-03-2026"
echo date("H:i:s"); // bijv. "14:30:05"
echo date("l d F Y"); // bijv. "Tuesday 24 March 2026"
?>
Toon de huidige datum in het formaat "d-m-Y" (dag-maand-jaar). Gebruik date().
Toon de huidige tijd in het formaat "H:i:s" (uur:minuten:seconden).
Toon alleen het huidige jaar met date().
Maak een variabele $uur met het huidige uur (als getal) met behulp van date("H"). Controleer of het uur kleiner is dan 12. Zo ja, toon "Goedemorgen!", anders toon "Goedemiddag!".
Maak een copyright-regel door echo te gebruiken met het huidige jaar: het resultaat moet zijn "© 2026 MijnBedrijf" (waarbij 2026 dynamisch is via date("Y")).
Toon het huidige Unix-timestamp met time() en toon daarna op een nieuwe regel de huidige datum in het formaat "Y-m-d H:i:s".
Schrijf een functie nederlandseDag() die de huidige Engelse dagnaam ophaalt met date("l") en met een switch-statement de Nederlandse vertaling teruggeeft. Vertaal: Monday=Maandag, Tuesday=Dinsdag, Wednesday=Woensdag, Thursday=Donderdag, Friday=Vrijdag, Saturday=Zaterdag, Sunday=Zondag. Test met echo nederlandseDag();.
Schrijf een functie artikelTeaser($tekst, $lengte) die een teaser maakt van een artikel. Als de tekst langer is dan $lengte, knip dan af op $lengte tekens en plak "..." erachter. Is de tekst korter of gelijk, geef de tekst ongewijzigd terug. Test met echo artikelTeaser("Dit is een heel lang verhaal over programmeren in PHP", 20);.
Schrijf een functie volledigeDatum() die de huidige datum teruggeeft in het formaat: "Dinsdag 24 maart 2026 om 14:30". Gebruik nederlandseDag() (die je ook moet schrijven met een switch op date("l")) en een array $maanden om de Engelse maandnaam te vertalen. Gebruik date("d") voor de dag, date("F") voor de Engelse maand, date("Y") voor het jaar en date("H:i") voor de tijd.
In dit hoofdstuk heb je geleerd:
trim(), strtolower(), strtoupper() en ucfirst()strlen()substr()strpos()str_replace()date() en time()d, m, Y, H, i, s, l, F