(PHP 8 >= 8.1.0)
BackedEnum::tryFrom — Asocia un escalar a una instancia de enum o a null
El método tryFrom() traduce un string o un int en el caso Enum correspondiente, si existe. Si no hay un caso correspondiente definido, devolverá null.
value
El valor escalar a hacer corresponder con un caso de enumeración.
Una instancia de caso de esta enumeración, o null si no se ha encontrado.
Ejemplo #1 Uso básico
El siguiente ejemplo ilustra la manera en que los casos de enumeración son devueltos.
<?php
enum Suit: string
{
case Hearts = 'H';
case Diamonds = 'D';
case Clubs = 'C';
case Spades = 'S';
}
$h = Suit::tryFrom('H');
var_dump($h);
$b = Suit::tryFrom('B') ?? Suit::Spades;
var_dump($b);
?>
El resultado del ejemplo sería:
enum(Suit::Hearts) enum(Suit::Spades)