Decodes data.
string $data The encoded JSON string to decode:
string $format Must be set to JsonEncoder::FORMAT:
array $context An optional set of options for the JSON decoder; see below:
The $context array is a simple key=>value array, with the following supported keys:
json_decode_associative: boolean If true, returns the object as associative array. If false, returns the object as nested StdClass If not specified, this method will use the default set in JsonDecode::__construct
json_decode_recursion_depth: integer Specifies the maximum recursion depth If not specified, this method will use the default set in JsonDecode::__construct
json_decode_options: integer Specifies additional options as per documentation for json_decode. Only supported with PHP 5.4.0 and higher
mixed
Overrides DecoderInterface::decode
http://php.net/json_decode json_decode
public function decode($data, $format, array $context = array()) {
$context = $this
->resolveContext($context);
$associative = $context['json_decode_associative'];
$recursionDepth = $context['json_decode_recursion_depth'];
$options = $context['json_decode_options'];
if (version_compare(PHP_VERSION, '5.4.0') >= 0) {
$decodedData = json_decode($data, $associative, $recursionDepth, $options);
}
else {
$decodedData = json_decode($data, $associative, $recursionDepth);
}
$this->lastError = json_last_error();
return $decodedData;
}