mirror of
https://github.com/pacnpal/thrillwiki_laravel.git
synced 2025-12-20 08:11:10 -05:00
34 lines
689 B
PHP
34 lines
689 B
PHP
<?php
|
|
|
|
namespace App\Enums;
|
|
|
|
enum TrackMaterial: string
|
|
{
|
|
case STEEL = 'STEEL';
|
|
case WOOD = 'WOOD';
|
|
case HYBRID = 'HYBRID';
|
|
|
|
public function label(): string
|
|
{
|
|
return match($this) {
|
|
self::STEEL => 'Steel',
|
|
self::WOOD => 'Wood',
|
|
self::HYBRID => 'Hybrid',
|
|
};
|
|
}
|
|
|
|
public static function values(): array
|
|
{
|
|
return array_column(self::cases(), 'value');
|
|
}
|
|
|
|
public static function labels(): array
|
|
{
|
|
return array_map(fn($case) => $case->label(), self::cases());
|
|
}
|
|
|
|
public static function options(): array
|
|
{
|
|
return array_combine(self::values(), self::labels());
|
|
}
|
|
} |