Tutorials

Constanten

De basis van constanten simpel besproken

Pagina 1

Define

In dit artikel hoop ik de constanten simpel uit te leggen, het is aan je zelf of je ze ook daadwerkelijk wilt gebruiken.

Constanten
Constanten zijn net als variabelen in PHP gebruiken om een bepaalde waarde op te slaan. Het grootste verschil in vergelijking met variabelen is dat zoals de naam al zegt de inhoud niet veranderd kan worden. Dit is vooral handig bij statische content zoals bijvoorbeeld in een config.


Define
Constanten een waarde geven gaat iets anders dan je zou doen met variabelen. Hiervoor heb je de functie define():

define ( string name, mixed value [, bool case_insensitive])

Als eerste geef je de naam van de constante op. Om je programmacode netjes te houden word hier meestal gebruik gemaakt van een naam bestaande uit HOOFDLETTERS. Dit om later in je code makkelijk het verschil te zien tussen constanten en tekst.
De tweede waarde is de inhoud van de constante. In ons voorbeeld is dit Hallo.
De derde waarde wordt normaal gesproken niet gebruikt, maar geeft aan of de constante hoofdlettergevoelig moet zijn of niet. Standaard is deze waarde false. Ik raad je dan ook aan om dit zo te laten om je programmacode overzichtelijk te houden...

Voorbeeld:

define ("CONSTANTE", "Hallo");
echo CONSTANTE; //Geeft Hallo terug...
echo Constante; //Werkt niet

define ("CONSTANTE", "Hallo", true);
echo CONSTANTE; //Geeft Hallo terug...
echo Constante; //Geeft Hallo terug...

/* Natuurlijk kun je constanten net als variabelen gebruiken, dus niet alleen bij echo, maar ook binnen andere functies... */

Pagina 2

Define 2

Tweede manier van output
Naast het rechtstreeks gebruiken van de naam van de constante kan het ook handig zijn om gebruik te maken van de functie constant(). Je denkt misschien waarom moeilijk doen als het makkelijk kan? Dit heeft alles te maken met overzichtelijkheid, je ziet gelijk dat het om een constante gaat, dit is vooral in grote scripts erg makkelijk.

Voorbeeld:

define ("CONSTANTE", "Hallo");
echo constant("CONSTANTE");//Geeft Hallo terug...

Defined?
Om te kijken of een constante al gedefineerd is kun je gebruik maken van de functie defined(). Deze functie geeft true terug als de constante gedefineerd is en false als deze nog niet bestaat.

Voorbeeld:

if (defined('CONSTANTE')) { 
   echo CONSTANTE;
}
Pagina 3

Standaard Constanten

Standaard PHP constanten
PHP heeft standaard al een aantal constanten die altijd gedefineerd zijn. Deze kun je dus altijd gebruik. Hieronder een lijstje van de meest belangrijke constanten:

__FILE__
Naam van het script dat uitgevoerd wordt. Geeft altijd aan in welk bestand deze constante staat, bij includen geeft hij dus de naam van het geinclude bestand.

__LINE__
Regelnummer waar deze constante staat binnen een bestand.

PHP_VERSION
Versie van PHP parser die op server draait.

PHP_OS
Naam van besturingssysteem waarop PHP draait.

Voor de overige constanten verwijs ik je naar http://nl3.php.net/manual/nl/language.constants.php. Hier staan o.a. handige constanten voor het weergeven van fouten in je scripts.

Alle constanten
Om een array te krijgen met alle gedefineerde constanten kun je gebruik maken van get_defined_constants (). Deze functie geeft een array terug met alle constanten. Houd er wel rekening mee dat in deze array ook alle standaard door php gedefineerde constanten staan!
Pagina 4

Conclusie

Conclusie
Ik hoop dat je iets aan dit artikel hebt gehad. Constanten kunnen erg makkelijk in gebruik zijn en voor veel doeleinden worden gebruikt. Hierbij valt vooral te denken aan vaste waarden waarvoor veel mensen nog steeds variabelen gebruiken (bijvoorbeeld een config file). Zoals ik in het artikel heb aangegeven is het wel belangrijk om rekening te houden met de overzichtelijkheid, slordig en veelvuldig gebruik van constanten kan leiden tot later onoverzichtelijk en onbruikbare code.

Voor meer informatie verwijs ik je naar PHP.net.
Voor vragen of aanvullingen kun je me altijd mailen.

Reacties

0
Nog geen reacties.