Laravel迁移:使用本机PHP枚举

huwehgph  于 2022-10-30  发布在  PHP
关注(0)|答案(2)|浏览(99)

在PHP 8.1中,引入了对枚举的原生支持。我如何在Laravel迁移中使用它们?
我的第一个想法会是这样的东西,但它不起作用。
第一个

h43kikqp

h43kikqp1#

我还不确定$table->enum是否实现了枚举,但是您可以这样做;

enum DayOfWeek {
    case Monday;
    case Tuesday;
    case Wednesday;
    case Thursday;
    case Friday;
    case Saturday;
    case Sunday;
}

$table->enum('day_of_week', array_map(fn($day) => $day->name, DayOfWeek::cases()));
3b6akqbq

3b6akqbq2#

enum DayOfWeek {
    case Monday;
    case Tuesday;
    case Wednesday;
    case Thursday;
    case Friday;
    case Saturday;
    case Sunday;
}

$table->enum('day_of_week', array_column(DayOfWeek::cases(), 'name'));

相关问题