PHP 8.1 枚举(Enums)详解
2026/7/6 6:53:54 网站建设 项目流程

目录

  1. 什么是枚举?
  2. 基本语法
  3. 纯值枚举
  4. 回退枚举
  5. 枚举方法
  6. 接口实现
  7. 实用示例
  8. 注意事项

什么是枚举?

枚举是一种特殊的数据类型,允许定义一组命名的常量值。在 PHP 8.1 之前,开发者通常使用类常量或数组来模拟枚举,但 PHP 8.1 引入了原生枚举支持,提供了更好的类型安全性和功能。

基本语法

// 定义纯值枚举enumStatus:string{caseDRAFT='draft';casePUBLISHED='published';caseARCHIVED='archived';}// 使用枚举$status=Status::DRAFT;// 获取枚举值echo$status->value;// 输出: draft// 通过值获取枚举实例$status=Status::from('draft');// 或者安全获取(失败时返回 null)$status=Status::tryFrom('draft');

纯值枚举(Pure Enums)

// 整数类型的枚举enumPriority:int{caseLOW=1;caseMEDIUM=2;caseHIGH=3;caseCRITICAL=4;}// 字符串类型的枚举enumColor:string{caseRED='#FF0000';caseGREEN='#00FF00';caseBLUE='#0000FF';}// 使用示例$priority=Priority::HIGH;echo$priority->value;// 输出: 3echo$priority->name;// 输出: HIGH// 类型提示functionsetPriority(Priority$priority):void{echo"Setting priority to:{$priority->value}\n";}setPriority(Priority::CRITICAL);

回退枚举(Backed Enums)

// 回退枚举可以具有标量值(int 或 string)enumHttpStatus:int{caseOK=200;case

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询