ReflectionClass::getConstant
(PHP 5, PHP 7, PHP 8)
ReflectionClass::getConstant — 获取已定义的常量
参数
-
name
-
要获取的类常量的名称。
返回值
常量名称为 name
的值。
如果在类中没有找到该常量,则返回 false
。
范例
示例 #1 使用 ReflectionClass::getConstant()
<?php
class Example {
const C1 = false;
const C2 = 'I am a constant';
}
$reflection = new ReflectionClass('Example');
var_dump($reflection->getConstant('C1'));
var_dump($reflection->getConstant('C2'));
var_dump($reflection->getConstant('C3'));
?>
以上例程会输出:
bool(false) string(15) "I am a constant" bool(false)

User Contributed Notes 2 notes
aurelien dot tisserand at wavesoftware dot ch ¶
8 years ago
If the $name constant doesn't exist in the targetted class the function returns bool(false), not empty nor null but false (you to test with "==="
$constFounded = false ;
$this->currentlangClass = new ReflectionClass($langFile);
$this->currentlangClass->getConstant($constant);
if($myConst !== false){
$constFounded = true ;
}
Bhimsen ¶
10 years ago
The "getconstant" method can be used to get the value associated with a constant
of a particular class that you are examining.
The following code snippet shows this:
<?php
class Test{
const ONE = "Number one";
const TWO = "Number two";
}
$obj = new ReflectionClass( "Test" );
echo $obj->getconstant( "ONE" )."\n";
echo $obj->getconstant( "TWO" )."\n";
?>
output:
Number one
Number two
备份地址:http://www.lvesu.com/blog/php/reflectionclass.getconstant.php