Home  >  Article  >  Backend Development  >  How to Access Class Constants Dynamically in PHP?

How to Access Class Constants Dynamically in PHP?

Linda Hamilton
Linda HamiltonOriginal
2024-11-04 07:16:31353browse

How to Access Class Constants Dynamically in PHP?

Accessing Class Constants Dynamically

Accessing class constants can be a challenge when you only know the constant's name during runtime. By utilizing system functions or reflection, it's possible to overcome this limitation.

Using Constant Function

The constant function simplifies constant retrieval. It's capable of working with both constants defined using define and class constants:

<code class="php">class A
{
    const MY_CONST = 'myval';

    static function test()
    {
        $c = 'MY_CONST';
        return constant('self::'. $c);
    }
}

echo A::test(); // Output: myval</code>

Using Reflection Class

For a more elaborate approach, reflection can be employed:

<code class="php">$ref = new ReflectionClass('A');
$constName = 'MY_CONST';
echo $ref->getConstant($constName); // Output: myval</code>

The above is the detailed content of How to Access Class Constants Dynamically in PHP?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn