class Serializer implements SerializerInterface, NormalizerInterface, DenormalizerInterface, EncoderInterface, DecoderInterface

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')

Properties

protected ChainEncoder $encoder
protected ChainDecoder $decoder
protected array $normalizers
protected array $normalizerCache
protected array $denormalizerCache

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|scalar
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)

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

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

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

scalar
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)

Checks whether the serializer can encode to given format.

bool
supportsDecoding(string $format)

Checks whether the deserializer can decode from given format.

Details

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

Parameters

array $normalizers
array $encoders

at line 94
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 110
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 124
array|scalar 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|scalar

at line 158
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

at line 166
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

at line 174
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

at line 217
final scalar 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

scalar

Exceptions

UnexpectedValueException

at line 225
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 259
bool supportsEncoding(string $format)

Checks whether the serializer can encode to given format.

Parameters

string $format Format name

Return Value

bool

at line 267
bool supportsDecoding(string $format)

Checks whether the deserializer can decode from given format.

Parameters

string $format Format name

Return Value

bool