Maison > développement back-end > tutoriel php > Comment accéder dynamiquement aux constantes de classe en PHP ?

Comment accéder dynamiquement aux constantes de classe en PHP ?

Patricia Arquette
Libérer: 2024-11-05 03:30:02
original
405 Les gens l'ont consulté

How can you access class constants dynamically in PHP?

Accès dynamique aux constantes de classe

En PHP, accéder dynamiquement aux constantes de classe à l'aide d'une variable variable peut être difficile. Cependant, il existe deux méthodes efficaces pour y parvenir :

Utilisation de la fonction constante

La fonction constant() accepte un argument de chaîne représentant le nom de la constante et l'évalue :

<br>self:: <br>{</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">const MY_CONST = 'myval';

static function test()
{
    $c = 'MY_CONST';
    return constant('self::'. $c);
}
Copier après la connexion

}

echo A::test(); // sortie : myval

Dans cet exemple, la fonction constant() évalue la chaîne "self::MY_CONST" et renvoie la valeur de la constante MY_CONST.

Utiliser Reflection

Reflection vous permet d'accéder dynamiquement aux informations sur les classes, les méthodes et les constantes :

<br>$ref = new ReflectionClass( 'A');<br>$constName = 'MY_CONST';<br>echo $ref->getConstant($constName); // sortie : myval<br>

Ici, l'objet ReflectionClass est créé pour la classe A. La méthode getConstant() renvoie ensuite la valeur de la constante MY_CONST.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal