PHP 8.4.2 Released!

ReflectionClassConstant::isEnumCase

(PHP 8 >= 8.1.0)

ReflectionClassConstant::isEnumCaseクラス定数が、列挙型の case かどうかを調べる

説明

public ReflectionClassConstant::isEnumCase(): bool

クラス定数が、列挙型 の case かどうかを調べます。

パラメータ

この関数にはパラメータはありません。

戻り値

クラス定数が、列挙型の case である場合に true を返します。 そうでない場合、false を返します。

例1 ReflectionClassConstant::isEnumCase() の例

通常のクラス定数と、列挙型の case を区別する例です。

<?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
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top