Forum und email

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.

Example#1 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é
?>