Les constantes peuvent être impossibles
<?php
enum x : string {
case B = 'b';
const C = 'c';
}
class x2 {
const E = x::B->value;
const F = x::C + [];
}
echo x2::E;
Dans ce code, la constante x2::F est impossible, car l’addition d’une chaîne et d’un tableau provoque une erreur fatale.
Pourtant, cela n’est déterminé qu’à l’exécution, et uniquement lorsque la constante est utilisée.
Comme cette constante n’est jamais utilisée, son code n’est jamais exécuté, et elle ne génère aucune erreur. PHP a optimisé l’erreur en la supprimant.
See Also
- Almost impossible constant [Try me]
PHP Features
Last updated: 11 October 2026