From 08260680e421ed19d5173575787f09f333fa9c7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Dunglas?= Date: Sun, 6 Mar 2016 20:35:49 +0100 Subject: [PATCH] [Serializer] XmlEncoder: Make load flags configurable --- src/Symfony/Component/Serializer/Encoder/XmlEncoder.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/Symfony/Component/Serializer/Encoder/XmlEncoder.php b/src/Symfony/Component/Serializer/Encoder/XmlEncoder.php index d1f09f6eaf..460a6998c5 100644 --- a/src/Symfony/Component/Serializer/Encoder/XmlEncoder.php +++ b/src/Symfony/Component/Serializer/Encoder/XmlEncoder.php @@ -30,15 +30,18 @@ class XmlEncoder extends SerializerAwareEncoder implements EncoderInterface, Dec private $format; private $context; private $rootNodeName = 'response'; + private $loadOptions; /** * Construct new XmlEncoder and allow to change the root node element name. * - * @param string $rootNodeName + * @param string $rootNodeName + * @param int|null $loadOptions A bit field of LIBXML_* constants */ - public function __construct($rootNodeName = 'response') + public function __construct($rootNodeName = 'response', $loadOptions = null) { $this->rootNodeName = $rootNodeName; + $this->loadOptions = null !== $loadOptions ? $loadOptions : LIBXML_NONET | LIBXML_NOBLANKS; } /** @@ -81,7 +84,7 @@ class XmlEncoder extends SerializerAwareEncoder implements EncoderInterface, Dec libxml_clear_errors(); $dom = new \DOMDocument(); - $dom->loadXML($data, LIBXML_NONET | LIBXML_NOBLANKS); + $dom->loadXML($data, $this->loadOptions); libxml_use_internal_errors($internalErrors); libxml_disable_entity_loader($disableEntities);