## Wat is een functie?

In PHP-scripts tref je vaak verschillende taken aan die moeten worden afgehandeld. Sommige taken moeten zelfs meer dan één keer worden uitgevoerd. In die gevallen is het handig om voor de uit te voeren taak een functie te schrijven. In de functie leg je één keer vast wat er moet gebeuren. Door de functie aan te roepen, wordt het uitvoeren van de beschreven taak geregeld. Stel je maakt een website en je wilt op elke pagina een copyright afgebeeld hebben. Daarvoor zou je een aparte functie kunnen schrijven.
Een functie in PHP bestaat in het algemeen uit 3 verschillende onderdelen:

- De functienaam voorafgegaan door het woord function en een spatie.
- Haakjes () achter de functienaam waarbinnen door een komma gescheiden argumenten kunnen voorkomen.
- De functie body omsloten door accolades { } .

Het format van een functie ziet er dan als volgt uit:

function functienaam($arg1, $arg2 , …, $arg)
{
// code sectie
}

Voor het afbeelden van het copyright hebben we de onderstaande functie geschreven:

function show_copyright()
{
echo "Copyright &copy; 2008 ENIGMA. Alle rechten voorbehouden.";
}

De naam van de functie is show_copyright. De functie heeft geen argumenten.

Als je in een PHP-script deze functie aanroept, wordt de copyright regel afgebeeld op de plek waar de functie wordt aangeroepen. Het enige wat je moet onderhouden is het jaartal in de functie. Het aanroepen van de functie kan door de opdracht show_copyright(); in het PHP-script te plaatsen. Stel dat je in de show_copyright-functie ook het huidige kalenderjaar wilt opnemen en dat je geen zin hebt om dit elk jaar weer aan te passen. Het is dan mogelijk om gebruik te maken van een ingebouwde PHP-functie die dat voor jou doet. Daarvoor gebruiken we de functie date(). De code luidt dan:

<?php
function show_copyright()
{
echo "Copyright &copy; 2008 - " . date("Y") . " ENIGMA. Alle rechten voorbehouden.";
}
show_copyright();
?>

Als functies binnen functies gebruikt worden, spreken we van het nesten van functies. De copyrightregel wordt nu als volgt op het scherm weergegeven:

Door het aanroepen van de functie show_copyright() kun je op elke webpagina waar je het copyright wilt laten zien, dat verwezenlijken.
PHP heeft een grote hoeveelheid standaardfuncties die je uitgebreid gedocumenteerd kunt raadplegen in de functielijst op www.php.net. Maar naast die standaardfuncties biedt PHP je ook de mogelijkheid zelf functies te maken. Dit kan dus handig zijn als je op webpagina’s regelmatig dezelfde taken wilt laten uitvoeren.

Het kan zijn dat je als webmaster van verschillende websites eenzelfde copyright wilt gebruiken. Alle websites hebben verschillende namen. Nu kun je een variabele $site_naam introduceren. Met behulp van deze variabele kun je nu elke website voorzien van een unieke copyright regel. Je geeft nu de functie show_copyright() het argument $site_naam mee. Stel deze webmaster past de functie show_copyright op deze manier aan en wil website www.enigma-online.nl in de regel van het coypright laten zien. De functie zou er dan alsvolgt uit kunnen zien

<?php
function show_copyright($site_naam)
{
echo "Copyright &copy; 2008 - " . date("Y") . " ".$site_naam." Alle rechten voorbehouden.";
}
show_copyright();
?>
Tussen de haakjes van de functie mag je zelf een variabele bedenken. Deze variabele bestaat alleen binnen de functie.
De aanroep van de functie: show_copyright("Enigma");
Met als resultaat:
Copyright © 2008 - 2021 Enigma Alle rechten voorbehouden.