p->ch; } $arr_a = array('i' => 1, 'p' => null, 'ch' => array(), 'd' => 'test 1'); $arr_b = array('i' => 2, 'p' => null, 'ch' => array(), 'k' => 'b', 'd' => 'test 2'); $arr_c = array('i' => 3, 'p' => null, 'ch' => array(), 'k' => 'c', 'd' => 'test 3'); $arr_d = array('i' => 4, 'p' => null, 'ch' => array(), 'k' => 'd', 'd' => 'test 4'); $node_a = (object) $arr_a; $node_b = (object) $arr_b; $node_c = (object) $arr_c; $node_d = (object) $arr_d; $node_d->p = $node_c; $node_c->p = $node_a; $node_b->p = $node_a; $node_a->ch[] = $node_b; $node_a->ch[] = $node_c; $node_c->ch[] = $node_d; $indexes = array('a' => $node_a, 'b' => $node_b, 'c' => $node_b, 'd' => $node_d); $tree = $node_a; echo '
'; print_r($tree); echo ''; echo $s = serialize($tree); echo '
'; print_r($tree_b); echo ''; echo '
'; print_r(getSameLevelNodes($indexes,'b')); echo ''; ?>