Een functie in PHP is een blok code dat een specifieke taak uitvoert en dat onder een bepaalde naam wordt gedefinieerd. Functies kunnen herhaaldelijk worden aangeroepen, wat helpt bij het verminderen van code-duplicatie en het verbeteren van de leesbaarheid en het onderhoud van de code. In PHP kun je zowel ingebouwde functies gebruiken, die al door de taal zelf worden geleverd, als je eigen (gebruikersgedefinieerde) functies creëren.
Een voorbeeld van een veelgebruikte ingebouwde PHP-functie is `strlen()`, die de lengte van een string retourneert:
```
$string = “Hallo Wereld!”;
$lengte = strlen($string);
echo $lengte; // Uitvoer: 13
```
In dit voorbeeld wordt de ingebouwde functie `strlen()` gebruikt om de lengte van de string “Hallo Wereld!” te bepalen, wat 13 karakters is.
```
function zegHallo($naam) {
return “Hallo, “ . $naam . “!”;
}
echo zegHallo(“Jan”); // Uitvoer: Hallo, Jan!
```
In dit voorbeeld definieert de functie `zegHallo` een simpele taak: het teruggeven van een begroetingsboodschap voor een opgegeven naam. Deze functie kan vervolgens herhaaldelijk worden aangeroepen met verschillende namen.
Functies kunnen parameters accepteren en kunnen ook een waarde teruggeven. De parameters worden tussen haakjes na de functienaam geplaatst, en de waarde die de functie teruggeeft wordt met het `return` keyword aangegeven. Hier is een voorbeeld met meerdere parameters:
```
function optellen($a, $b) {
return $a + $b;
}
$som = optellen(5, 3);
echo $som; // Uitvoer: 8
```
In dit voorbeeld accepteert de functie `optellen` twee parameters `$a` en `$b`, telt ze op en retourneert vervolgens het resultaat.
Het concept van scope is belangrijk bij het werken met functies. Variabelen gedefinieerd binnen een functie zijn lokaal voor die functie en zijn niet toegankelijk buiten de functie. Hier is een voorbeeld dat dit illustreert:
```
function vermenigvuldig($a, $b) {
$resultaat = $a * $b;
return $resultaat;
}
vermenigvuldig(4, 5);
echo $resultaat; // Fout: ongedefinieerde variabele $resultaat
```
In dit voorbeeld levert de laatste regel een fout op omdat `$resultaat` is gedefinieerd binnen de functie `vermenigvuldig` en niet toegankelijk is buiten deze scope.
Functies kunnen zichzelf ook aanroepen; dit wordt recursie genoemd. Hier is een eenvoudig voorbeeld van een recursieve functie die de faculteit van een getal berekent:
```
function faculteit($n) {
if ($n <= 1) {
return 1;
} else {
return $n * faculteit($n – 1);
}
}
echo faculteit(5); // Uitvoer: 120
```
In dit voorbeeld roept de functie `faculteit` zichzelf aan totdat `$n` gelijk is aan 1, waarna de berekening teruggaat door de recursieve keten.
Voor aanvullende informatie over PHP-functies kun je de officiële PHP-documentatie raadplegen:
- [PHP Manual – Functions](https://www.php.net/manual/en/language.functions.php)
- [PHP String Functions](https://www.php.net/manual/en/ref.strings.php)
Deze bronnen bieden gedetailleerde uitleg en voorbeelden over hoe je functies in PHP kunt gebruiken en wat de beschikbare ingebouwde functies zijn.