总有人间一两风,填我十万八千梦

PHP BackedEnum 用法 手册 | 示例代码

PHP开发手册 归档 15℃ 0评论

BackedEnum 接口

(PHP 8 >= 8.1.0)

简介

引擎会自动应用 BackedEnum 接口到回退枚举。 用户自定义类不能实现该接口。 由于引擎已提供枚举的默认实现,因此不能重载它的接口。 主要将它用于类型检测。

接口摘要

interface BackedEnum extends UnitEnum {
/* 方法 */
public static from(int string $value): static
public static tryFrom(int string $value): ?static
/* 继承的方法 */
public static UnitEnum::cases(): array

}

目录

用户贡献的笔记

whatuwant

As of PHP 8.1, while `UnitEnum` & `BackedEnum` cannot be implemented by user-defined classes, it seems they can be extended by user-defined interfaces and eventually be implemented by enums.

<?php

interface TestEnumInterface extends BackedEnum
{
    public function
foo(): string;
}

enum TestEnum: string implements TestEnumInterface
{
    case
CASE_1 = 'case 1';
    case
CASE_2 = 'case 2';

    public function foo(): string
   
{
        return
'bar';
    }
}

?>

转载请注明:悠然品鉴 » PHP BackedEnum 用法 手册 | 示例代码

喜欢 (0)or分享 (0)
发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址