질문:
다음을 사용하여 동적으로 클래스 상수 값에 액세스할 수 있습니까? 상수의 이름이 포함된 변수?
답변:
예, 이를 달성하는 방법에는 두 가지가 있습니다: 상수 함수를 사용하거나 리플렉션을 사용하는 것입니다.
방법 1: 상수 함수
상수 함수는 정의 및 클래스 상수로 선언된 사용자 정의 상수의 값을 검색하는 데 사용할 수 있습니다:
<code class="php">class A { const MY_CONST = 'myval'; static function test() { $c = 'MY_CONST'; return constant('self::'. $c); } } echo A::test(); // outputs "myval"</code>
방법 2: 반사 클래스
보다 포괄적인 접근 방식은 반사를 사용하는 것입니다.
<code class="php">$ref = new ReflectionClass('A'); $constName = 'MY_CONST'; echo $ref->getConstant($constName); // outputs "myval"</code>
위 내용은 변수를 사용하여 클래스 상수 값에 동적으로 액세스할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!