我想创建一个文件来定义我的所有Enumerations,稍后在模型或迁移中使用它们。
因为我在许多模型中都有相同的枚举,我不想每次都重新定义它们。
有什么建议??
它有一个特殊的包装。它使用起来非常简单。 https://github.com/BenSampo/laravel-enum
创建一个文件夹,通常是App/Enums
,然后创建一个按类别或根据需要解耦的类。
<?php
namespace App\Enums;
use BenSampo\Enum\Enum;
final class UserType extends Enum
{
//Here define your constants
const Administrator = 0;
const Moderator = 1;
const Subscriber = 2;
const SuperAdministrator = 3;
}
然后,您可以在项目中简单地“使用”此类,并且可以像以下一样轻松访问值:
use App\Enums\UserType;
...
class SomeClass {
...
public function test() {
return UserType::Moderator; // Returns 1
}
}