PHP 8.4.0 RC4 available for testing

BackedEnum::from

(PHP 8 >= 8.1.0)

BackedEnum::fromスカラー型の値を列挙型にマップする

説明

public static BackedEnum::from(int|string $value): static

from() メソッドは 文字列型や整数型の値を、存在する場合に 列挙型の case に変換します。 マッチする case が定義されていない場合は、 ValueError がスローされます。

パラメータ

value

列挙型の case にマップするスカラー値。

戻り値

この列挙型の case のインスタンスを返します。

例1 基本的な使用法

以下の例は、列挙型の case がどのように返されるかを示しています。

<?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');
?>

上の例の出力は以下となります。

enum(Suit::Hearts)

Fatal error: Uncaught ValueError: "B" is not a valid backing value for enum "Suit" in /file.php:15

参考

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top