Новое в Symfony 6.3 — Команда отладки сериализатора
Компонент Serializer
выполняет (де)сериализацию структур данных, включая графы объектов, в структуры массивов или другие форматы, такие как XML и JSON. Это мощный компонент, но большая часть его сложности скрыта, что затрудняет отладку сложных ситуаций.
В Symfony 6.2 мы добавили новую панель Serializer
в профилировщик Symfony, чтобы помочь в отладке. В Symfony 6.3 мы добавляем ещё один инструмент, который поможет вам: новую команду debug:serializer
.
Эта команда выводит метаданные сериализатора заданного класса, что помогает найти любые проблемы в конфигурации метаданных:
php bin/console debug:serializer 'App\Entity\Book'
App\Entity\Book
---------------
+----------+------------------------------------------------------------+
| Property | Options |
+----------+------------------------------------------------------------+
| name | [ |
| | "groups" => [ |
| | "book:read", |
| | "book:write", |
| | ] |
| | "maxDepth" => 1, |
| | "serializedName" => "book_name" |
| | "ignore" => false |
| | "normalizationContexts" => [], |
| | "denormalizationContexts" => [] |
| | ] |
| isbn | [ |
| | "groups" => [ |
| | "book:read", |
| | ] |
| | "maxDepth" => null, |
| | "serializedName" => null |
| | "ignore" => false |
| | "normalizationContexts" => [], |
| | "denormalizationContexts" => [] |
| | ] |
+----------+------------------------------------------------------------+
Эта команда объединяет другие встроенные команды отладки, предоставляемые Symfony, всего 12 команд:
debug:config "Dump the current configuration for an extension"
debug:container "Display current services for an application"
debug:autowiring "List classes/interfaces you can use for autowiring"
debug:dotenv "Lists all dotenv files with variables and values"
debug:event-dispatcher "Display configured listeners for an application"
debug:router "Display current routes for an application"
debug:serializer "Display serialization information for classes"
debug:translation "Display translation messages information"
debug:validator "Display validation constraints for classes"
debug:form "Display form type information"
debug:firewall "Display information about your security firewall(s)"
debug:twig "Show a list of twig functions, filters, globals and tests"
Вам не хватает каких-либо команд отладки? Вы бы добавили новые параметры и функции к существующим командам? Напишите нам в комментариях.