Čitateľné popisy
readable() prevedie prípad na čitateľný popis: hodnotu backed enumu — alebo názov prípadu pri čistom enume — spracuje cez Str::headline() a výsledok potom vyhľadá v prekladači Laravelu pre aktuálny jazyk. Ak preklad neexistuje, vráti samotný výsledok Str::headline(). label() je alias pre kód UI, ktorý uprednostňuje tento názov:
NewsCategory::HotNews->readable(); // "Hot News"
NewsCategory::HotNews->label(); // "Hot News"
enum Status { use Helpers; case Active; }
Status::Active->readable(); // "Active"Ako z hodnôt vznikajú popisy
| Prípad | Popis |
|---|---|
case HotNews = 'hot-news' | Hot News |
case OnHold = 'on_hold' | On Hold |
case InProgress = 'inProgress' | In Progress |
case Pending = 'pending' | Pending |
case Active | Active (čistý enum — použije sa názov) |
case Medium = 5 | 5 (celočíselný enum — samotné číslo) |
Popis vzniká z hodnoty, nie z názvu prípadu, preto voľte hodnoty, ktoré sa dobre čítajú — alebo ich preložte. Všetky ostatné metódy s popismi — labels(), toOptions(), toArray(), options(), fromLabel() a tryFromLabel() — idú cez readable(), takže vlastný alebo preložený popis sa prejaví všade naraz.
Popisy pochádzajú z prekladača aplikácie, takže metódy, ktoré ich vytvárajú, potrebujú spustenú Laravel aplikáciu. Ak výsledok Str::headline() náhodou pomenúva celú prekladovú skupinu namiesto jedného riadku — „Auth“ na súborovom systéme bez rozlišovania veľkosti písmen zodpovedá súboru lang/en/auth.php — vráti sa nepreložený text, nie celá skupina.
Všetky popisy naraz
NewsCategory::labels()->all(); // ['Hot News', 'Regular News', 'Private News']Prejavte lásku k open source
Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.
Ďalšie spôsoby podpory vrátane kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
Chcete to zabudovať do svojho produktu?
Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.