(PHP 8 >= 8.1.0)
BackedEnum::tryFrom — スカラー型の値を列挙型にマップするか、null
を返す
tryfrom() メソッドは
文字列型や整数型の値を、存在する場合に
列挙型の case に変換します。
マッチする case が定義されていない場合は、null
を返します。
value
列挙型の case にマップするスカラー値。
この列挙型の case のインスタンスを返します。 対応する case が見つからない場合は、null を返します。
例1 基本的な使用法
以下の例は、列挙型の case がどのように返されるかを示しています。
<?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);
?>
上の例の出力は以下となります。
enum(Suit::Hearts) enum(Suit::Spades)