Laravel 9 тут, і є деякі нові функції, які ми можемо використовувати.
Ця серія буде продовженням про фреймворк Laravel версії 9, і в кожній статті ми розглянемо нову функцію!
- Episode 1: Laravel 9: Stub Migrations
- Episode 2: Laravel 9: New Designs
- Episode 3: Laravel 9: New Helpers
- Episode 4: Laravel 9: Enums!
- Episode 5: Laravel 9: Full Text Index & SwiftMailer
І так! Нарешті, у нас є офіційна підтримка Enums у php 8.1, хоча ми могли б додати їх до фреймворку Laravel, використовуючи сторонні пакети, такі як spatie/enums.
Але що таке enums в php?
Вони є лише однотонними об'єктами, і синтаксис для їх визначення такий:
З радістю, ми можемо зробити так багато речей з Laravel Enums, і в цій статті ми розглянемо деякі з найважливіших застосувань.
Laravel 9.x має можливість вводити підказку на нашому маршруті¦ думайте про це як про прив'язку маршрутної моделі, але замість моделі у нас є enums! Нехай подивіться приклад:і в web.php:
За допомогою цих кодів Laravel автоматично розпізнає тип категорії, і якщо ми не передамо жодного з попередньо визначених типів, він поверне відповідь HTTP 404!
Ми можемо використовувати enum()
метод як наступний приклад для створення стовпця з типом enum, просто будьте обережні, вибираючи власне ім'я, оскільки перейменування стовпця enum
наразі не підтримується!
Тепер наш найдорожчий, Eloquent ORM дозволить нам прив'язати атрибути до перерахувань PHP. Нам просто потрібно використовувати $casts
масив властивостей у бажаній моделі:І ми можемо отримати доступ до атрибуту безпосередньо:
Згідно з документами Laravel, Майже всі відомі методи, які ми використовуємо в колекціях, також доступні на таких enums, як: