'系统菜单', self::AUTO_GENERATE => '自动生成', }; } /** * 获取颜色标识 * * @return string */ public function color(): string { return match ($this) { self::SYSTEM => 'blue', self::AUTO_GENERATE => 'green', }; } /** * 获取所有枚举值 * * @return array */ public static function values(): array { return array_column(self::cases(), 'value'); } /** * 获取所有枚举标签 * * @return array */ public static function labels(): array { $labels = []; foreach (self::cases() as $case) { $labels[$case->value] = $case->label(); } return $labels; } }