Files
thrillwiki_laravel/app/Enums/TrackMaterial.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());
}
}