Class Marshaler
Marshals JSON documents or array representations of JSON documents into the parameter structure required by DynamoDB. Also allows for unmarshaling. Does not support binary (B) or set (*S) types, since they are not supported explicitly in JSON.
Methods summary
-
publicmarshalJson ( string $json )Marshal a JSON document from a string to an array that is formatted in the proper parameter structure required by DynamoDB operations.
-
publicmarshalItem ( array|\stdClass $item )Marshal a native PHP array of data to a new array that is formatted in the proper parameter structure required by DynamoDB operations.
-
publicmarshalValue ( mixed $value )Marshal a native PHP value into an array that is formatted in the proper parameter structure required by DynamoDB operations.
-
publicunmarshalJson ( array $data, int $jsonEncodeFlags = 0 )Unmarshal a document (item) from a DynamoDB operation result into a JSON document string.
-
publicunmarshalItem ( array $data )Unmarshal an item from a DynamoDB operation result into a native PHP array. If you set $mapAsObject to true, then a stdClass value will be returned instead.
-
publicunmarshalValue ( array $value, bool $mapAsObject = false )Unmarshal a value from a DynamoDB operation result into a native PHP value. Will return a scalar, array, or (if you set $mapAsObject to true) stdClass value.
Methods detail
Marshal a JSON document from a string to an array that is formatted in the proper parameter structure required by DynamoDB operations.
Parameters
- $json
string
$json A valid JSON document.
Returns
arrayThrows
Marshal a native PHP array of data to a new array that is formatted in the proper parameter structure required by DynamoDB operations.
Parameters
- $item
array|stdClass
$item An associative array of data.
Returns
arrayMarshal a native PHP value into an array that is formatted in the proper parameter structure required by DynamoDB operations.
Parameters
- $value
mixed
$value A scalar, array, or stdClass value.
Returns
arrayFormatted like
array(TYPE => VALUE).Throws
Unmarshal a document (item) from a DynamoDB operation result into a JSON document string.
Parameters
- $data
array
$data Item/document from a DynamoDB result.- $jsonEncodeFlags
integer
$jsonEncodeFlags Flags to use withjson_encode().
Returns
stringUnmarshal an item from a DynamoDB operation result into a native PHP array. If you set $mapAsObject to true, then a stdClass value will be returned instead.
Parameters
- $data
array
$data Item from a DynamoDB result.
Returns
array|stdClassUnmarshal a value from a DynamoDB operation result into a native PHP value. Will return a scalar, array, or (if you set $mapAsObject to true) stdClass value.
Parameters
- $value
array
$value Value from a DynamoDB result.- $mapAsObject
boolean
$mapAsObject Whether maps should be represented as stdClass.
Returns
mixed