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 de classe avec types différents

<?php

class A {
    protected const int|string|X C = 1;
}

class B extends A {
    protected const int|string|Y C = 'a';
}

Avec PHP, il est possible d’avoir une constante de classe avec des valeurs différentes entre une classe parente et sa classe enfant.

Question du jour : est-il possible d’avoir une constante de classe avec des types différents ? Et éventuellement des valeurs différentes.

Fonctionne avec PHP 8.3. Application inconnue.

L’astuce consiste à utiliser les types union, qui permettent d’ajouter de nouveaux types valides sans compatibilité ascendante.

See Also

PHP Features

Last updated: 11 October 2026