salekur / enum
创建和管理枚举的有效工具。
1.0.2
2024-06-26 06:51 UTC
Requires
- php: >=7.4
This package is auto-updated.
Last update: 2024-09-26 07:24:05 UTC
README
一个用于在 Laravel 中创建和管理枚举的健壮且灵活的包。此包简化了枚举类型的创建和管理,提供了一种一致且可扩展的方法来处理选项及其对应的标签。
特性
- 自动标签生成:从枚举键自动生成可读性强的标签。
- 自定义标签支持:通过静态
values
方法允许自定义标签。 - 选项检索:提供方法检索所有选项、特定选项按键以及检查选项的存在。
- 键和标签提取:轻松从枚举中提取所有键或标签。
安装
要安装此包,请使用 Composer
composer require salekur/enum
用法
扩展 Enum 类并定义每个枚举值的常量以创建新的枚举。可选地,提供一个 values 方法来自定义标签。
namespace Salekur\Enum\Enum; class UserRole extends Enum { const ADMIN = 'admin'; const EDITOR = 'editor'; const VIEWER = 'viewer'; // optional values function public static function values(): array { return [ self::ADMIN => 'Administrator', self::EDITOR => 'Content Editor', self::VIEWER => 'Content Viewer' ]; } }
检索选项
Enum 类提供了几种方法来检索和与枚举选项交互。这些方法允许您轻松访问所有枚举选项,指定选项标签,检查选项的存在,并提取键和标签。以下是使用 UserRole 枚举的这些方法的示例。
$options = UserRole::options(); // ['admin' => 'Administrator', 'editor' => 'Content Editor', 'viewer' => 'Content Viewer'] $label = UserRole::get('admin'); // 'Administrator' $exists = UserRole::has('editor'); // true $keys = UserRole::keys(); // ['admin', 'editor', 'viewer'] $labels = UserRole::labels(); // ['Administrator', 'Content Editor', 'Content Viewer']