(PHP 8 >= 8.1.0)
BackedEnum::from — Convierte un escalar en una instancia de enum
El método from() traduce un string o un int en un caso Enum correspondiente, si existe. Si no hay un caso correspondiente definido, lanzará un error ValueError.
value
El valor escalar a hacer coincidir con un caso de enumeración.
Una instancia de caso de esta enumeración.
Ejemplo #1 Uso básico
El siguiente ejemplo ilustra la forma en que se devuelven los casos de enumeración.
<?php
enum Suit: string
{
case Hearts = 'H';
case Diamonds = 'D';
case Clubs = 'C';
case Spades = 'S';
}
$h = Suit::from('H');
var_dump($h);
$b = Suit::from('B');
?>
El resultado del ejemplo sería:
enum(Suit::Hearts) Fatal error: Uncaught ValueError: "B" is not a valid backing value for enum "Suit" in /file.php:15