class Serializer implements SerializerInterface, ContextAwareNormalizerInterface, ContextAwareDenormalizerInterface, ContextAwareEncoderInterface, ContextAwareDecoderInterface

Serializer serializes and deserializes data.

objects are turned into arrays by normalizers. arrays are turned into various output formats by encoders.

$serializer->serialize($obj, 'xml') $serializer->decode($data, 'xml') $serializer->denormalize($data, 'Class', 'xml')

Methods

__construct(array $normalizers = array(), array $encoders = array())

No description

string
serialize(mixed $data, string $format, array $context = array())

Serializes data in the appropriate format.

object
deserialize(mixed $data, string $type, string $format, array $context = array())

Deserializes data into the given type.

array|string|int|float|bool
normalize($data, string $format = null, array $context = array())

Normalizes an object into a set of arrays/scalars.

object
denormalize(mixed $data, $type, string $format = null, array $context = array())

Denormalizes data back into an object of the given class.

bool
supportsNormalization(mixed $data, string $format = null, array $context = array())

Checks whether the given class is supported for normalization by this normalizer.

bool
supportsDenormalization(mixed $data, string $type, string $format = null, array $context = array())

Checks whether the given class is supported for denormalization by this normalizer.

string|int|float|bool
encode(mixed $data, string $format, array $context = array())

Encodes data into the given format.

mixed
decode(string $data, string $format, array $context = array())

Decodes a string into PHP data.

bool
supportsEncoding(string $format, array $context = array())

Checks whether the serializer can encode to given format.

bool
supportsDecoding(string $format, array $context = array())

Checks whether the deserializer can decode from given format.

Details

at line line 62
__construct(array $normalizers = array(), array $encoders = array())

Parameters

array $normalizers
array $encoders

at line line 99
final string serialize(mixed $data, string $format, array $context = array())

Serializes data in the appropriate format.

Parameters

mixed $data Any data
string $format Format name
array $context Options normalizers/encoders have access to

Return Value

string

at line line 115
final object deserialize(mixed $data, string $type, string $format, array $context = array())

Deserializes data into the given type.

Parameters

mixed $data
string $type
string $format
array $context

Return Value

object

at line line 129
array|string|int|float|bool normalize($data, string $format = null, array $context = array())

Normalizes an object into a set of arrays/scalars.

Parameters

$data
string $format Format the normalization result will be encoded as
array $context Context options for the normalizer

Return Value

array|string|int|float|bool

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

at line line 165
object denormalize(mixed $data, $type, string $format = null, array $context = array())

Denormalizes data back into an object of the given class.

Parameters

mixed $data Data to restore
$type
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

at line line 181
bool supportsNormalization(mixed $data, string $format = null, array $context = array())

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
array $context

Return Value

bool

at line line 189
bool supportsDenormalization(mixed $data, string $type, string $format = null, array $context = array())

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
array $context

Return Value

bool

at line line 234
final string|int|float|bool encode(mixed $data, string $format, array $context = array())

Encodes data into the given format.

Parameters

mixed $data Data to encode
string $format Format name
array $context Options that normalizers/encoders have access to

Return Value

string|int|float|bool

Exceptions

UnexpectedValueException

at line line 242
final mixed decode(string $data, string $format, array $context = array())

Decodes a string into PHP data.

Parameters

string $data Data to decode
string $format Format name
array $context Options that decoders have access to

The format parameter specifies which format the data is in; valid values depend on the specific implementation. Authors implementing this interface are encouraged to document which formats they support in a non-inherited phpdoc comment.

Return Value

mixed

Exceptions

UnexpectedValueException

at line line 250
bool supportsEncoding(string $format, array $context = array())

Checks whether the serializer can encode to given format.

Parameters

string $format Format name
array $context

Return Value

bool

at line line 258
bool supportsDecoding(string $format, array $context = array())

Checks whether the deserializer can decode from given format.

Parameters

string $format Format name
array $context

Return Value

bool