Constantes
Tabla de contenidos
Una constante es un identificador (nombre) para un valor simple. Como su
nombre sugiere, ese valor no puede cambiar durante la ejecución del
script (excepto las
constantes mágicas, que en realidad no son constantes).
Las constantes distinguen entre mayúsculas y minúsculas. Por convención,
los identificadores de constantes se escriben siempre en mayúsculas.
Nota:
Antes de PHP 8.0.0, las constantes definidas con la función
define() podían no distinguir entre mayúsculas
y minúsculas.
El nombre de una constante sigue las mismas reglas que cualquier etiqueta
en PHP. Un nombre de constante válido comienza con una letra o guion bajo,
seguido de cualquier cantidad de letras, números o guiones bajos. Como
expresión regular, se expresaría así:
^[a-zA-Z_\x80-\xff][a-zA-Z0-9_\x80-\xff]*$
Es posible definir constantes con define() usando nombres
reservados o incluso inválidos, cuyo valor solo puede obtenerse con la
función constant(). Sin embargo, no se recomienda hacerlo.
Ejemplo #1 Nombres de constantes válidos e inválidos
<?php
// Nombres de constantes válidos
define("FOO", "something");
define("FOO2", "something else");
define("FOO_BAR", "something more");
// Nombres de constantes inválidos
define("2FOO", "something");
// Esto es válido, pero debe evitarse:
// PHP podría algún día proporcionar una constante mágica
// que rompa el script
define("__FOO__", "something");
Nota:
Para estos propósitos, una letra es a-z, A-Z y los caracteres
ASCII del 128 al 255 (0x80-0xff).
Al igual que las superglobals, el ámbito de una constante es global.
Las constantes pueden ser accedidas desde cualquier lugar del script sin
importar el ámbito. Para más información sobre el ámbito, consulte la
sección del manual sobre
ámbito de las variables.
Nota:
A partir de PHP 7.1.0, las constantes de clase pueden declarar una
visibilidad protected o private, haciéndolas disponibles únicamente en
el ámbito jerárquico de la clase en la que se definen.