PHP - Manual: ReflectionEnum::getCases
2024-12-22
(PHP 8 >= 8.1.0)
ReflectionEnum::getCases — 返回枚举中的所有条目的清单
每个枚举都能包括零或多个条目。该方法能获取所有定义的条目, 顺序为语法中的顺序(也就是源码中出现的顺序)。
此函数没有参数。
数组,包含了 Enum 的反射对象,包含每一个枚举条目。 对于 Unit Enum,它们都会是 ReflectionEnumUnitCase 的实例。 对于回退枚举,它们都会是 ReflectionEnumBackedCase 的实例。
示例 #1 ReflectionEnum::getCases() 例子
<?php
enum Suit
{
case Hearts;
case Diamonds;
case Clubs;
case Spades;
}
$rEnum = new ReflectionEnum(Suit::class);
$cases = $rEnum->getCases();
foreach ($cases as $rCase) {
var_dump($rCase->getValue());
}
?>
以上例程会输出:
enum(Suit::Hearts) enum(Suit::Diamonds) enum(Suit::Clubs) enum(Suit::Spades)
官方地址:https://www.php.net/manual/en/reflectionenum.getcases.php