ObjectNormalizer
class ObjectNormalizer extends AbstractObjectNormalizer
Converts between objects and arrays using the PropertyAccess component.
Traits
SerializerAwareTrait | SerializerAware trait. |
Constants
CIRCULAR_REFERENCE_LIMIT | |
OBJECT_TO_POPULATE | |
GROUPS | |
ATTRIBUTES | |
ALLOW_EXTRA_ATTRIBUTES | |
ENABLE_MAX_DEPTH | |
DEPTH_KEY_PATTERN |
Methods
setSerializer(SerializerInterface $serializer) Sets the serializer. | from SerializerAwareTrait | |
__construct(ClassMetadataFactoryInterface $classMetadataFactory = null, NameConverterInterface $nameConverter = null, PropertyAccessorInterface $propertyAccessor = null, PropertyTypeExtractorInterface $propertyTypeExtractor = null) Sets the {@link ClassMetadataFactoryInterface} to use. | ||
AbstractNormalizer | setCircularReferenceLimit(int $circularReferenceLimit) Set circular reference limit. | from AbstractNormalizer |
AbstractNormalizer | setCircularReferenceHandler(callable $circularReferenceHandler) Set circular reference handler. | from AbstractNormalizer |
AbstractNormalizer | setCallbacks(array $callbacks) Set normalization callbacks. | from AbstractNormalizer |
AbstractNormalizer | setIgnoredAttributes(array $ignoredAttributes) Set ignored attributes for normalization and denormalization. | from AbstractNormalizer |
bool | supportsNormalization(mixed $data, string $format = null) Checks whether the given class is supported for normalization by this normalizer. | from AbstractObjectNormalizer |
array|scalar | normalize(object $object, string $format = null, array $context = array()) Normalizes an object into a set of arrays/scalars. | from AbstractObjectNormalizer |
bool | supportsDenormalization(mixed $data, string $type, string $format = null) Checks whether the given class is supported for denormalization by this normalizer. | from AbstractObjectNormalizer |
object | denormalize(mixed $data, string $class, string $format = null, array $context = array()) Denormalizes data back into an object of the given class. | from AbstractObjectNormalizer |
Details
setSerializer(SerializerInterface $serializer)
Sets the serializer.
Parameters
SerializerInterface | $serializer | A SerializerInterface instance |
__construct(ClassMetadataFactoryInterface $classMetadataFactory = null, NameConverterInterface $nameConverter = null, PropertyAccessorInterface $propertyAccessor = null, PropertyTypeExtractorInterface $propertyTypeExtractor = null)
Sets the {@link ClassMetadataFactoryInterface} to use.
Parameters
ClassMetadataFactoryInterface | $classMetadataFactory | |
NameConverterInterface | $nameConverter | |
PropertyAccessorInterface | $propertyAccessor | |
PropertyTypeExtractorInterface | $propertyTypeExtractor |
AbstractNormalizer setCircularReferenceLimit(int $circularReferenceLimit)
Set circular reference limit.
Parameters
int | $circularReferenceLimit | Limit of iterations for the same object |
Return Value
AbstractNormalizer |
AbstractNormalizer setCircularReferenceHandler(callable $circularReferenceHandler)
Set circular reference handler.
Parameters
callable | $circularReferenceHandler |
Return Value
AbstractNormalizer |
AbstractNormalizer setCallbacks(array $callbacks)
Set normalization callbacks.
Parameters
array | $callbacks | Help normalize the result |
Return Value
AbstractNormalizer |
Exceptions
InvalidArgumentException | if a non-callable callback is set |
AbstractNormalizer setIgnoredAttributes(array $ignoredAttributes)
Set ignored attributes for normalization and denormalization.
Parameters
array | $ignoredAttributes |
Return Value
AbstractNormalizer |
bool supportsNormalization(mixed $data, string $format = null)
Checks whether the given class is supported for normalization by this normalizer.
Parameters
mixed | $data | Data to normalize |
string | $format | The format being (de-)serialized from or into |
Return Value
bool |
array|scalar normalize(object $object, string $format = null, array $context = array())
Normalizes an object into a set of arrays/scalars.
Parameters
object | $object | Object to normalize |
string | $format | Format the normalization result will be encoded as |
array | $context | Context options for the normalizer |
Return Value
array|scalar |
Exceptions
InvalidArgumentException | Occurs when the object given is not an attempted type for the normalizer |
CircularReferenceException | Occurs when the normalizer detects a circular reference when no circular reference handler can fix it |
LogicException | Occurs when the normalizer is not called in an expected context |
bool supportsDenormalization(mixed $data, string $type, string $format = null)
Checks whether the given class is supported for denormalization by this normalizer.
Parameters
mixed | $data | Data to denormalize from |
string | $type | The class to which the data should be denormalized |
string | $format | The format being deserialized from |
Return Value
bool |
object denormalize(mixed $data, string $class, string $format = null, array $context = array())
Denormalizes data back into an object of the given class.
Parameters
mixed | $data | Data to restore |
string | $class | The expected class to instantiate |
string | $format | Format the given data was extracted from |
array | $context | Options available to the denormalizer |
Return Value
object |
Exceptions
BadMethodCallException | Occurs when the normalizer is not called in an expected context |
InvalidArgumentException | Occurs when the arguments are not coherent or not supported |
UnexpectedValueException | Occurs when the item cannot be hydrated with the given data |
ExtraAttributesException | Occurs when the item doesn't have attribute to receive given data |
LogicException | Occurs when the normalizer is not supposed to denormalize |
RuntimeException | Occurs if the class cannot be instantiated |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.3/Symfony/Component/Serializer/Normalizer/ObjectNormalizer.html