Files
thrillwiki_laravel/app/Enums/RideCategory.php

42 lines
1004 B
PHP

<?php
namespace App\Enums;
enum RideCategory: string
{
case SELECT = '';
case ROLLER_COASTER = 'RC';
case DARK_RIDE = 'DR';
case FLAT_RIDE = 'FR';
case WATER_RIDE = 'WR';
case TRANSPORT = 'TR';
case OTHER = 'OT';
public function label(): string
{
return match($this) {
self::SELECT => 'Select ride type',
self::ROLLER_COASTER => 'Roller Coaster',
self::DARK_RIDE => 'Dark Ride',
self::FLAT_RIDE => 'Flat Ride',
self::WATER_RIDE => 'Water Ride',
self::TRANSPORT => 'Transport',
self::OTHER => 'Other',
};
}
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());
}
}