Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Constantes abstraites

By WebSmithery

<?php

abstract class Foo {
    
    // self-referential 'abstract' declaration
    const NAME = self::NAME;
}

class Fooling extends Foo {
    
    // Overrides definition from parent class
    // Without this declaration, an error will be triggered
    const NAME = 'Donald';
}

Il existe un modèle assez courant pour déclarer des “constantes de classe abstraites” en PHP.

Le chargement paresseux de PHP empêche l’erreur “Fatal error: Uncaught Error: Cannot declare self-referencing constant self::NAME” si la constante est surchargée.

Cela crée une « constante abstraite » effective, qui doit être définie pour être utilisable.

See Also

PHP Features

Last updated: 04 October 2026