Returns the value of a static attribute. This also works for attributes that are declared protected or private.
@since Method available since Release 3.4.0
string $className:
string $attributeName:
mixed
public static function getStaticAttribute($className, $attributeName) {
if (!is_string($className)) {
throw PHPUnit_Util_InvalidArgumentHelper::factory(1, 'string');
}
if (!class_exists($className)) {
throw PHPUnit_Util_InvalidArgumentHelper::factory(1, 'class name');
}
if (!is_string($attributeName)) {
throw PHPUnit_Util_InvalidArgumentHelper::factory(2, 'string');
}
$class = new ReflectionClass($className);
while ($class) {
$attributes = $class
->getStaticProperties();
if (array_key_exists($attributeName, $attributes)) {
return $attributes[$attributeName];
}
$class = $class
->getParentClass();
}
throw new PHPUnit_Framework_Exception(sprintf('Attribute "%s" not found in class.', $attributeName));
}