added messages get function

This commit is contained in:
2023-02-06 09:49:10 +10:00
parent 305c018d39
commit 0bed3aa096

View File

@@ -6,6 +6,13 @@ use ReflectionClass;
class Enum
{
/**
* Message list
*
* @var array<string<static>>
*/
public static $messages = [];
/**
* Caches reflections of enum subclasses.
*
@@ -47,4 +54,18 @@ class Enum
{
return array_values(static::getReflection()->getConstants());
}
/**
* Returns a message from the enum subclass
*
* @return string
*/
public static function getMessage(int $messageIndex, string $defaultMessage = 'Unknown'): string
{
if(array_key_exists($messageIndex, self::$messages) === true) {
return self::$messages[$messageIndex];
}
return $defaultMessage;
}
}