Clases y Objetos
PHP Manual

Constantes de Clases

Es posible definir valores constantes en función de cada clase manteniéndola invariable. Las constantes se diferencian de las variables comunes en que no utilizan el símbolo $ al declararlas o emplearlas.

El valor debe ser una expresión constante, no (por ejemplo) una variable, una propiedad, un resultado de una operación matemática, o una llamada a una función.

También es posible que las interfaces tengan constantes. Consulte los ejemplos de la documentación de interfaces.

A partir de PHP 5.3.0, es posible hacer referencia a una clase utilizando una variable. El valor de la variable no puede ser una palabra reservada (p.ej., self, parent y static).

Ejemplo #1 Definición y uso de una constante

<?php
class MiClase
{
    const 
CONSTANTE 'valor constante';

    function 
mostrarConstante() {
        echo  
self::CONSTANTE "\n";
    }
}

echo 
MiClase::CONSTANTE "\n";

$nombreclase "MiClase";
echo 
$nombreclase::CONSTANTE "\n"// A partir de PHP 5.3.0

$clase = new MiClase();
$clase->mostrarConstante();

echo 
$clase::CONSTANTE."\n"// A partir de PHP 5.3.0
?>

Ejemplo #2 Ejemplo de datos estáticos

<?php
class foo {
    
// A partir de PHP 5.3.0
    
const BAR = <<<'EOT'
bar
EOT;
}
?>

A diferencia de heredocs, se puede utilizar nowdocs en cualquier contexto de datos estáticos.

Nota:

El soporte para nowdoc fue agregado en PHP 5.3.0.


Clases y Objetos
PHP Manual