문제
이것이 내가 PHP 5.3.0 이상에서 작동하고 싶었던 방법입니다.
<?php
class MyClass
{
const CONSTANT = 'Const var';
}
$classname = 'MyClass';
echo $classname::CONSTANT; // As of PHP 5.3.0
?>
하지만 PHP 5.2.6만 사용할 수 있습니다.클래스를 인스턴스화하지 않고 이 동작을 시뮬레이션하는 간단한 방법을 생각할 수 있는 사람이 있습니까?
다른 팁
그러한 상수에 절대적으로 액세스해야 하는 경우 다음을 수행할 수 있습니다.
<?php
class MyClass
{
const CONSTANT = 'Const var';
}
$classname = 'MyClass';
echo eval( 'return '.$classname.'::CONSTANT;' );
?>
하지만 내가 당신이라면 eval을 사용하지 않으려고 노력할 것입니다.
제휴하지 않습니다 StackOverflow