Constantes de classe

Il est possible de définir des valeurs constantes à l'intérieur d'une classe, qui ne seront pas modifiables. Les constantes diffèrent des variables normales du fait qu'on n'utilise pas le symbole $ pour les déclarer ou les utiliser. Tout comme pour les membres statiques , on ne peut pas accéder aux valeurs constantes depuis une instance de l'objet (en utilisant $object::constant ).

La valeur doit être une expression constante, non (par exemple) une variable, un membre de la classe, le résultat d'une opération mathématique ou un appel de fonction.

Exemple 19.17. Définition et utilisation d'une constante de classe

<?php
class  MyClass 
{
  const 
constant  'valeur constante' ;

  function 
showConstant () {
    echo  
self :: constant  "\n" ;
  }
}

echo 
MyClass :: constant  "\n" ;

$class  = new  MyClass ();
$class -> showConstant ();
// echo $class::constant;  n'est pas autorisé
?>