上級 › enumのfrom()に存在しない値を渡すと ValueError になる › パターン1
enumのfrom()に存在しない値を渡すと ValueError になる
バックドenum(値を持つenum)のfrom()メソッドは、対応するcaseが存在しない値を渡すとValueErrorを投げます。
1 <?php 2 enum Status: string { 3 case Active = 'active'; 4 case Inactive = 'inactive'; 5 } 6 $s = Status::from(_________); ^ 7 echo $s->value;
Fatal error: Uncaught ValueError: "pending" is not a valid backing value for enum Status in main.php:6
空欄を埋めて実行を通す
Statusにはpendingというcaseがありません。from()は該当するcaseが無い値を渡すとValueErrorを投げます。定義済みの値を渡す必要があります。
次の問題