GraphAware\Neo4j\Client\Formatter\Result::array_map_deep PHP Method

array_map_deep() private method

private array_map_deep ( array $array, array $graph ) : array
$array array
$graph array
return array
    private function array_map_deep(array $array, array $graph)
    {
        foreach ($array as $k => $v) {
            if (!is_array($v)) {
                continue;
            }
            if (array_key_exists('metadata', $v) && isset($v['metadata']['labels'])) {
                $array[$k] = new Node($v['metadata']['id'], $v['metadata']['labels'], $v['data']);
            } elseif (array_key_exists('start', $v) && array_key_exists('type', $v)) {
                $array[$k] = new Relationship($v['metadata']['id'], $v['type'], $this->extractIdFromRestUrl($v['start']), $this->extractIdFromRestUrl($v['end']), $v['data']);
            } elseif (array_key_exists('length', $v) && array_key_exists('relationships', $v) && array_key_exists('nodes', $v)) {
                $array[$k] = new Path($this->getNodesFromPathMetadata($v, $graph), $this->getRelationshipsFromPathMetadata($v, $graph));
            } else {
                $array[$k] = $this->array_map_deep($v, $graph);
            }
        }
        return $array;
    }