GenderEnum.php 573 B

1234567891011121314151617181920212223242526272829
  1. <?php
  2. namespace App\Enums;
  3. use App\Traits\EnumHelper;
  4. enum GenderEnum: string
  5. {
  6. use EnumHelper;
  7. case MALE = 'male';
  8. case FEMALE = 'female';
  9. case OTHER = 'other';
  10. case PREFER_NOT_TO_SAY = 'prefer_not_to_say';
  11. public static function labelFor(self|string|null $gender): ?string
  12. {
  13. if (is_string($gender)) {
  14. $gender = self::tryFrom($gender);
  15. }
  16. return $gender?->label();
  17. }
  18. public function label(): string
  19. {
  20. return __("genders.{$this->value}");
  21. }
  22. }