Tutoriel PHP : Appel dynamique de constantes
Vous-êtes vous déjà retrouvé dans le cas de figure où vous devez utiliser une constante PHP dont vous ne pouvez pas connaître à l’avance le nom ?
Prenons un exemple simple :
- Vous disposez de plusieurs constantes suffixées par un numéro.
- Ce numéro sera déterminé dynamiquement lors de l’éxécution du script PHP.
- Vous devez utiliser une de ces constantes en fonction du numéro calculé par le script et vous remarquez que les méthodes valables pour les variables ne fonctionnent pas pour les constantes (utilisation des accolades pour générer dynamiquement le nom de la constante).
La solution proposée par PHP dans ce cas là est l’utilisation de la fonction constant qui retourne une constante identifiée par son nom au format String :
define('CONSTANT_1', 'constante n°1');
define('CONSTANT_2', 'constante n°2');
define('CONSTANT_3', 'constante n°3');
define('CONSTANT_4', 'constante n°4');
/**
* Retourne la constante identifiée par un numéro grâce à la fonction constant.
*
*/
function getConstant($num) {
return(constant('CONSTANT_' . $num));
}
Vous pouvez ainsi effectuer vos opérations de calcul du nom de la constante avant de l’appeler, le nom a donc bien été généré dynamiquement 😉
Salut,
je me renseignais pour émettre des constantes mais qui peuvent varier, ex. pour une minification du code à faire de temps en temps.
Je ne connaissait pas la fonction (parmi les 10 000 autres)
PHP constant, je file sur la DOC !
Malin (comme j’aime !)
Et Merci !
Raf