Forum und email

Constanten

PHP definieert aan aantal constanten en biedt een mechanisme om zelf constanten te definiëren in de code. Constanten lijken erg op variabelen, behalve dat constanten moeten worden gedefinieerd met de define() functie, en dat ze later niet meer kunnen worden veranderd.

De altijd aanwezige voorgedefinieerde 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 één. 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.

Example#1 Constanten definiëren

<?php
define("CONSTANT", "Hallo wereld.");
echo CONSTANT; // print "Hallo wereld."
?>
     

Example#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!");
?>