TGViewer
Пых Пых @phpyh · 7.82K subscribers
Post #445 10.4K
Service Dumper Bundle

При работе с DI в Symfony бывает полезно вывести сервис на экран, чтобы убедиться, что он правильно сконфигурирован. Да, есть очень полезные команды debug:container, debug:autowiring и lint:container, они помогают отладить контейнер, но это не то же самое, что увидеть дамп реального объекта.

Год назад я добавил в проект консольную команду, которая выводила на экран любой сервис. Для простоты она переиспользовала test.service_container из FrameworkBundle для доступа к приватным сервисам.

Недавно утилитка пригодилась мне на курсе. Когда мы проходим Symfony Dependency Injection, я всегда показываю, как выглядят сконфигурированные серисы в рантайме. Становится гораздо понятнее, как работает тот же tagged_locator или inline_service.

До сих пор я таскал команду из проекта в проект, но вчера, наконец, оформил её в виде бандла. На этот раз я скопировал и упростил оригинальные TestServiceContainerWeakRefPass и TestServiceContainerRealRefPass, чтобы не зависеть от FrameworkBundle и деталей объявления test.service_container, добавил разные варианты вывода сервисов на экран (var_dump, symfony/var-dumper, xdebug_break, кастом), а также разрешил менять алгоритм поиска сервисов по id.

В общем, ставьте, пробуйте, предлагайте идеи по улучшению!

https://github.com/phpyh/service-dumper-bundle
  • 👍 47
  • 🔥 21
  • ❤ 1
More from @phpyh
  1. Sep 30, 2026🍺 BeerPHP AI Moscow Кажется, «неделя PHP» потихоньку превращается в месяц PHP. 😅 Будет 2…
  2. Sep 28, 2026Запустили Пыхник и неделю PHP! Залетайте на первый открытый доклад от Дмитрия Dantes про к…
  3. Sep 15, 2026Сейчас один человек с AI может выполнять работу целого IT-отдела. Только хуёво
  4. Sep 12, 2026Спасибо за заявки! Всем напишу в понедельник. Осталось 1 место.
  5. Sep 11, 2026Хардкорный курс асинхронного PHP https://hardcourse.ru/php/async
  6. Sep 11, 2026Ещё полчасика надо — сайт готов, расписываю программу! 🙏
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 →