protected function unserializeData($value)
    {
        if ($value === null || !is_array($value)) {
            return $value;
        }

        if (isset($value[self::MAP_TYPE]) && !isset($value[self::CLASS_IDENTIFIER_KEY])) {
            $value = $value[self::SCALAR_VALUE];

            return $this->unserializeData($value);
        }

        if (isset($value[self::SCALAR_TYPE])) {
            return $this->getScalarValue($value);
        }

        if (isset($value[self::CLASS_PARENT_KEY]) && 0 === strcmp($value[self::CLASS_PARENT_KEY], 'SplFixedArray')) {
            return SplFixedArraySerializer::unserialize($this, $value[self::CLASS_IDENTIFIER_KEY], $value);
        }

        if (isset($value[self::CLASS_IDENTIFIER_KEY])) {
            return $this->unserializeObject($value);
        }

        return \array_map([$this, __FUNCTION__], $value);
    }
protected function unserializeData($value)
    {
        if ($value === null || !is_array($value)) {
            return $value;
        }

        if (isset($value[self::MAP_TYPE]) && !isset($value[self::CLASS_IDENTIFIER_KEY])) {
            $value = $value[self::SCALAR_VALUE];

            return $this->unserializeData($value);
        }

        if (isset($value[self::SCALAR_TYPE])) {
            return $this->getScalarValue($value);
        }

        if (isset($value[self::CLASS_PARENT_KEY]) && 0 === strcmp($value[self::CLASS_PARENT_KEY], 'SplFixedArray')) {
            return SplFixedArraySerializer::unserialize($this, $value[self::CLASS_IDENTIFIER_KEY], $value);
        }

        if (isset($value[self::CLASS_IDENTIFIER_KEY])) {
            return $this->unserializeObject($value);
        }

        return \array_map([$this, __FUNCTION__], $value);
    }
protected function unserializeData ( $ value ) { if ( $ value === null || ! is_array ( $ value ) ) { return $ value ; } if ( isset ( $ value [ self :: MAP_TYPE ] ) && ! isset ( $ value [ self :: CLASS_IDENTIFIER_KEY ] ) ) { $ value = $ value [ self :: SCALAR_VALUE ] ; return $ this -> unserializeData ( $ value ) ; } if ( isset ( $ value [ self :: SCALAR_TYPE ] ) ) { return $ this -> getScalarValue ( $ value ) ; } if ( isset ( $ value [ self :: CLASS_PARENT_KEY ] ) && 0 === strcmp ( $ value [ self :: CLASS_PARENT_KEY ] , 'SplFixedArray' ) ) { return SplFixedArraySerializer :: unserialize ( $ this , $ value [ self :: CLASS_IDENTIFIER_KEY ] , $ value ) ; } if ( isset ( $ value [ self :: CLASS_IDENTIFIER_KEY ] ) ) { return $ this -> unserializeObject ( $ value ) ; } return \ array_map ( [ $ this , __FUNCTION__ ] , $ value ) ; }
Parse the json decode to convert to objects again.

@param mixed $value

@return mixed
Parse the json decode to convert to objects again .