TGViewer
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter @phpproglib · 10.5K subscribers
Post #4329 3.29K
Laravel facades vs class aliases

Здесь рассматриваются различия между фасадами (Facades) и псевдонимами классов (Class Aliases) в Laravel, а также объясняется, как они стали восприниматься сообществом Laravel как взаимосвязанные концепции.

Фасады в Laravel представляют собой прокси-объекты для объектов, хранящихся в контейнере служб (Service Container). Если объект привязан к контейнеру служб под именем 'my-service', вы можете вызывать его методы, используя статические методы фасада.

При вызове статического метода на этом фасаде вызывается магический метод __callStatic(), извлекается служба 'my-service' из контейнера, и вызов перенаправляется к этому экземпляру.

Псевдонимы классов позволяют разработчикам создавать альтернативные имена для классов с помощью функции class_alias. Например:

class_alias(MyClass::class, 'BonzuPippinpaddleopsicopolisTheThird');

Это может быть удобно, когда нужно использовать классы с длинными полностью квалифицированными именами (FQCN) в представлениях или когда использование операторов use не уместно.

Основное недопонимание заключается в том, что Laravel по умолчанию создает псевдонимы для всех своих фасадов, делая их доступными как будто они находятся в глобальном пространстве имен. Это привело к тому, что многие в сообществе Laravel перепутали фасады с псевдонимами классов.
  • 👍 3
  • ❤ 2
  • 🔥 1
More from @phpproglib
  1. Oct 2, 2026🎹 Что делать после ChatGPT? Следующий шаг — AI-агенты. Они не просто отвечают на запросы,…
  2. Sep 30, 2026🔥 Последний день для разработчиков AI уже пишет код. Теперь важнее научиться встраивать е…
  3. Sep 30, 2026🐸 Библиотека пхпшника
  4. Sep 29, 2026💡 Laravel-фича, которая спасает тесты от случайных запросов Http::preventStrayRequests()…
  5. Sep 28, 2026🔐 ramsey/uuid — UUID без самописного кода Библиотека помогает генерировать, парсить и вал…
  6. Sep 28, 2026🤔 Что выведет код? ❤️ — 1 🔥 — 2 👍 — 12 👾 — Fatal error 👇 Правильный ответ (нажми, что…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →