hxm / enum
枚举包,为Laravel提供简单、可扩展且强大的枚举实现。
1.0.4
2022-04-26 04:27 UTC
Requires
- php: >=7
- laravel/framework: >=5
README
简单安装,为Laravel提供简单、可扩展且强大的枚举实现。
安装
通过Composer
composer require hxm/enum
基本用法
现在,您只需将枚举可能具有的可能值作为常量添加即可。
<?php namespace App\Enums; use HXM\Enum\Abstracts\EnumBase; class ExampleEnums extends EnumBase { const E1 = 1; const E2 = 2; protected static $descriptions = [ 1 => 'description for E1' ]; }
ExampleEnums::E1; // 1 ExampleEnums::getValueWithDescriptions()->toArray(); // [1 => 'description for E1', 2 => "E2"] ExampleEnums::getValues()->toArray(); // [1, 2] ExampleEnums::getDescription(1); // 'description for E1'
获取铸造
在模型类中使用
class ExampleClass extends Model { protected $casts = [ .... 'attribute' => ExampleEnums::class, ... ]; }
获取规则
Validator:make($data, [ 'attribute' => ['required', ExampleEnums::getRule()] ]);