Documentation PHP en français

  • Français

Constantes magiques

PHP fournit un grand nombre de constantes magiques. Certaines constantes sont définies par différentes extensions, et ne seront présentes que si ces extensions sont compilées avec PHP, ou bien si l'extension a été chargée dynamiquement.

Il y a huit constantes magiques qui changent suivant l'emplacement où elles sont utilisées. Par exemple, la valeur de __LINE__ dépend de la ligne où vous l'utilisez dans votre script. Ces constantes spéciales sont insensibles à la casse.

Quelques constantes PHP magiques
Nom Description
__LINE__ La ligne courante dans le fichier.
__FILE__ Le chemin complet et le nom du fichier courant. Si utilisé pour une inclusion, le nom du fichier inclus est retourné. __FILE__ contient toujours le chemin absolu pour les liens symboliques.
__DIR__ Le dossier du fichier. Si utilisé dans une inclusion, le dossier du fichier inclus sera retourné. C'est l'équivalent de dirname(__FILE__). Ce nom de dossier ne contiendra pas de slash final, sauf si c'est le dossier racine. (Ajouté en PHP 5.3.0.)
__FUNCTION__ Le nom de la fonction. Cette constante retourne le nom de la fonction comme il a été déclaré (sensible à la casse).
__CLASS__ Le nom de la classe courante. Cette constante retourne le nom de la classe comme il a été déclaré (sensible à la casse). Le nom de la classe contient l'espace de nom dans lequel cette classe a été déclarée (i.e. Foo\Bar). Notez que depuis PHP 5.4, __CLASS__ fonctionne aussi en Traits. Lorsqu'une méthode Trait est utilisée, __CLASS__ est le nom de la classe que Trait utilise en interne.
__TRAIT__ Le nom Trait (Ajouté en PHP 5.4.0). Depuis PHP 5.4, cette constante retourne le Trait comme il a été déclaré (sensible à la casse). Le nom Trait inclut l'espace de nom dans lequel il a été déclaré (e.g. Foo\Bar).
__METHOD__ Le nom de la méthode courante. Le nom de la méthode est retourné comme il a été déclaré (sensible à la casse).
__NAMESPACE__ Le nom de l'espace de noms courant (sensible à la casse). Cette constante est définie au moment de la compilation (Ajouté en PHP 5.3.0).

Voir aussi get_class(), get_object_vars(), file_exists() et function_exists().