[2] => Array
        (
            [id] => 2
            [parentid] => 0
            [layer] => 1
            [orders] => 2
            [name] => bbb)     [6] => Array
       (
         [id] => 6
         [parentid] => 2
         [layer] => 2
         [orders] => 1
         [name] => bbb.1
        )。
    [4] => Array
       (
                    [id] => 4
                    [parentid] => 1
                    [layer] => 2
                    [orders] => 1
                    [name] => aaa.2
       )

解决方案 »

  1.   

    $return_array=array();
    function makearray($arrayname,$array,$array_key=""){
    global ${$arrayname."_array"};
    $temp_array=array();
    foreach($array as $key=>$value){
    if(is_array($value)){
    makearray($arrayname,$value,$key);
    }else{
    $temp_array[$key]=$value;
    }
    }
    echo $array_key."<br>";
    if($array_key)$return_array[$array_key]=$temp_array;
    }
    makearray("return",$myarray);
    print_r($return_array);$myarray就是你的array
      

  2.   

    完整的:
    $return_array=array();
    function makearray($arrayname,$array,$array_key=""){
    global ${$arrayname."_array"};
    $temp_array=array();
    foreach($array as $key=>$value){
    if(is_array($value)){
    makearray($arrayname,$value,$key);
    }else{
    $temp_array[$key]=$value;
    }
    }
    if($array_key)${$arrayname."_array"}[$array_key]=$temp_array;
    }
    makearray("return",$myarray);
    print_r($return_array);
      

  3.   

    无论多少维都可以。
    任意结构的多维数组,只要每个数组的key不重复,否则会覆盖掉相同key的数组元素。
    ======================================上面的是不按照原数组顺序的。
    下面的是按照顺序的。
    =======================================$return_array=array();
    function makearray($arrayname,$array,$array_key=""){
    global ${$arrayname."_array"};
    $temp_array=array();
    $sort_array=array();
    foreach($array as $key=>$value){
    if(is_array($value)){
    $sort_array[$key]=$value;
    }else{
    $temp_array[$key]=$value;
    }
    }
    if($array_key)${$arrayname."_array"}[$array_key]=$temp_array;
    foreach($sort_array as $key=>$value){
    makearray($arrayname,$value,$key);
    }
    }
    makearray("return",$myarray);
    print_r($return_array);
      

  4.   

    i服了y,用php不看手册的?需要这么长的代码吗?有现成的不会用?查查手册array数组函数。array_merge,array_merge_recursive,大多数关于数组的操作都有了,所以我前面说用sizeof判断一下就可以了。