protected function buildStorageArrayForArrayProperty(array $arrayProperty)
{
$storableArray = [];
foreach ($arrayProperty as $key => $value) {
$storableArray[$key] = [];
if (is_array($value)) {
$storableArray[$key][self::TYPE] = 'array';
$storableArray[$key][self::VALUE] = $this->buildStorageArrayForArrayProperty($value);
} elseif (is_object($value)) {
$storableArray[$key][self::TYPE] = 'object';
$storableArray[$key][self::VALUE] = spl_object_hash($value);
$this->serializeObjectAsPropertyArray($value, false);
} else {
$storableArray[$key][self::TYPE] = 'simple';
$storableArray[$key][self::VALUE] = $value;
}
}
return $storableArray;
}