(PHP 8 >= 8.1.0)
ReflectionClassConstant::isEnumCase — Checks if class constant is an Enum case
此函数没有参数。
示例 #1 ReflectionClassConstant::isEnumCase() example
Distinguish between Enum cases and regular class constants.
<?php
enum Status
{
const BORING_CONSTANT = 'test';
const ENUM_VALUE = Status::PUBLISHED;
case DRAFT;
case PUBLISHED;
case ARCHIVED;
}
$reflection = new ReflectionEnum(Status::class);
foreach ($reflection->getReflectionConstants() as $constant) {
echo "{$constant->name} is ",
$constant->isEnumCase() ? "an enum case" : "a regular class constant",
PHP_EOL;
}
?>
以上示例会输出:
BORING_CONSTANT is a regular class constant ENUM_VALUE is a regular class constant DRAFT is an enum case PUBLISHED is an enum case ARCHIVED is an enum case