[Serializer] Add Support for Encoding Arrays as Child <item> Elements in XML Encoder #60228
+48
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Feature: Add Support for Encoding Arrays as Child
<item>
Elements in XML EncoderThis PR introduces a new option to the Symfony Serializer's
XmlEncoder
that allows indexed arrays to be encoded as<item>
elements under a single parent element, rather than repeating the parent element for each array item.Motivation
Currently, encoding an array like:
produces the following XML:
This structure is not ideal when a clear container-child relationship is required, such as when interoperating with systems that expect such XML structures.
New Behavior
With the new
XmlEncoder::ARRAY_AS_ITEM
option enabled, the same data now encodes to:Usage