BackedEnum::tryFrom

(PHP 8 >= 8.1.0)

BackedEnum::tryFromスカラー型の値を列挙型にマップするか、null を返す

説明

public static BackedEnum::tryFrom(int|string $value): ?static

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)

参考

関連キーワード:  スカラー, マップ, case, BackedEnum, , tryFrom, パラメータ, static, Suit, from