解决方案 »

  1.   

    $a = array(array(7,5),array(7,6,1),array(7,6,2,3,5),array(7,6,2,3,6));$root = array();
    foreach($a as $item) {
      $p =& $root;
      foreach($item as $k) {
        if(!isset($p[$k])) $p[$k] = array();
        $p =& $p[$k];
      }
    }
    print_r($root);
    Array
    (
        [7] => Array
            (
                [5] => Array
                    (
                    )            [6] => Array
                    (
                        [1] => Array
                            (
                            )                    [2] => Array
                            (
                                [3] => Array
                                    (
                                        [5] => Array
                                            (
                                            )                                    [6] => Array
                                            (
                                            )                                )                        )                )        ))
      

  2.   

    $p =& $p[$k]; 这句话是什么意思?看不懂
      

  3.   

    &应该是指 引用。
    $p =& $p[$k]; 
    是把 $p[$k]指向的内存地址 赋值给了$p有点类似指针。如果不用 & 的话。会很麻烦。