mirror of
https://github.com/archtechx/enums.git
synced 2025-12-12 11:14:05 +00:00
* Extend functionality to work with pure enums * Code review changes Altered `::values()` to act like `::names()` for backed enums, code style fixes, general cleanups
20 lines
415 B
PHP
20 lines
415 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace ArchTech\Enums;
|
|
|
|
use BackedEnum;
|
|
|
|
trait Options
|
|
{
|
|
/** Get an associative array of [case name => case value]. */
|
|
public static function options(): array
|
|
{
|
|
$cases = static::cases();
|
|
|
|
return isset($cases[0]) && $cases[0] instanceof BackedEnum
|
|
? array_column($cases, 'value', 'name')
|
|
: array_column($cases, 'name');
|
|
}
|
|
}
|