PHP defineert aan aantal constanten en biedt een mechanisme om zelf
constanten te defineren in de code. Constanten lijken erg op variabelen,
behalve dat constanten moeten worden gedefineerd met de
define() functie, en dat ze later niet meer kunnen
worden veranderd.
De altijd aanwezige voorgedefineerde constanten zijn:
- __FILE__
De naam van het script dat op het moment wordt uitgevoerd. Als het
wordt gebruikt binnen een ge-include of ge-required bestand, dan
wordt de naam van het included bestand gegeven, en niet de naam
van het parent bestand.
- __LINE__
Het regelnummer binnen het script dat op het moment wordt
uitgevoerd. Als het wordt gebruikt binnen een ge-include of
ge-required bestand, dan wordt de positie binnen het included
bestand gegeven.
- PHP_VERSION
De string die de versie aangeeft van de in gebruik zijnde
PHP parser; bijvoorbeeld '4.0.4-dev'.
- PHP_OS
De naam van het besturingssysteem waarop de PHP parser draait;
bijvoorbeeld 'Linux'.
- TRUE
Een ware waarde.
- FALSE
Een niet-ware waarde.
- E_ERROR
Geeft een fout aan, anders dan een parse fout, waarop geen
actie kan worden ondernomen.
- E_WARNING
Geeft een conditie aan waarin PHP weet dat er iets verkeerd is,
maar toch doorgaat; dit type fouten kunnen door het script zelf
worden opgevangen. Een voorbeeld zou een ongeldige regexp in
ereg() kunnen zijn.
- E_PARSE
De parser heeft een fatale fout in het script gevonden. Het is
niet mogelijk door te gaan.
- E_NOTICE
Soms gebeurt er iets wat een fout kan zijn of niet. Het script wordt
wel verder uitgevoerd. Een voorbeeld is het gebruik van bijvoorbeeld
$foo[bar], of het gebruiken
van een nog niet bestaande variabele.
- E_ALL
Alle E_* constanten in ?. Indien dit samen wordt
gebruikt met error_reporting() worden alle
fouten en problemen gerapporteerd door PHP.
De E_* constanten worden normaal gebruikt met de
error_reporting() functie om het fout rapporteer
niveau te zetten. Zie voor al deze constanten:
Error handling.
Ju kunt zelf constanten toevoegen met de
define() functie.
Let er op dat dit constanten zijn, en geen C-achtige macros; alleen
geldige scalaire gegevens mogen wordt gebruikt voor constanten.
Voorbeeld 8-1. Constanten defineren <?php
define("CONSTANT", "Hallo wereld.");
echo CONSTANT; // print "Hallo wereld."
?> |
|
Voorbeeld 8-2. Het gebruik van __FILE__ en __LINE__ <?php
function report_error($bestand, $regel, $tekst) {
echo "Er is een fout opgetreden in $bestand op regel $regel: $tekst.";
}
report_error(__FILE__,__LINE__, "D'r ging iets fout!");
?> |
|