此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【SICTXK】截止到2008-07-04 10:41:50的历史汇总数据(不包括此帖):
发帖的总数量:10                       发帖的总分数:290                      
结贴的总数量:10                       结贴的总分数:290                      
无满意结贴数:2                        无满意结贴分:50                       
未结的帖子数:0                        未结的总分数:0                        
结贴的百分比:100.00%               结分的百分比:100.00%                  
无满意结贴率:20.00 %               无满意结分率:17.24 %                  
敬礼!

解决方案 »

  1.   

    简单写了一个方法:不知道对不对。$arr_data = new array();
    foreach($hash_tab as $key ){   
    }
      

  2.   


    function fetchArray($array)
    {
    static $ra = array(); foreach((array)$array as $k=>$v)
    {
    if(is_array($array[$k])) fetchArray($array[$k]);
    else $ra[$array['id']][$k] = $v;
    }

    return $ra;
    }
      

  3.   

    我自己写的方法:
    function fetchArray($array)
    {
        static $arr_data = array();
    foreach($hash_list as $key => $value){
    if((is_array($value))&&($value['child']!='')){
    foreach($value['child'] as $key2 => $value2){
    if((is_array($value2))&&($value2['child']!='')){
    foreach($value2['child'] as $key3 => $value3){
    $arr_data[] = $value3;
    }
    array_pop($value2);
    $arr_data[] = $value2;
    }else{
    $arr_data[] = $value2;
    }
    }
    array_pop($value);
    $arr_data[] = $value;
    }else{
    $arr_data[] = $value;
    }
    }
        return $arr_data;

    }
      

  4.   

    刚才代码有点乱:function fetchArray($hash_list){
    $arr_data = array();
    foreach($hash_list as $key => $value){
    if((is_array($value))&&($value['child']!='')){
    foreach($value['child'] as $key2 => $value2){
    if((is_array($value2))&&($value2['child']!='')){
    foreach($value2['child'] as $key3 => $value3){
    $arr_data[] = $value3;
    }
    array_pop($value2);
    $arr_data[] = $value2;
    }else{
    $arr_data[] = $value2;
    }
    }
    array_pop($value);
    $arr_data[] = $value;
    }else{
    $arr_data[] = $value;
    }
    }
        return $arr_data;
    }
      

  5.   

    空数组?
    测试了一下,莫非构造的数组和你的不一样?
    $arr = array(
    12=>array(
    "id"=>12,
            "name"=>"ss",
    "parent"=>'',
    "child"=>array(
    121=>array(
                                                 "id"=>121,
                                                 "name"=>"bb",
                                                 "parent"=>12,
                                                 "child"=>array(
                                                  1211=>array(
                                                       "id"=>1211,
                                                       "name"=>"sdfdf",
                                                       "parent"=>121
                                                   ),
                                                   1212=>array(
                                                          "id"=>1212,
                                                          "parent"=>121
                                                   )

           )
                                    )
                 )
    ),
    15=>array(
        "id"=>15,
        "name"=>"cc",
        "parent"=>''
    )

    );function fetchArray($array)
    {
    static $ra = array(); foreach((array)$array as $k=>$v)
    {
    if(is_array($array[$k])) fetchArray($array[$k]);
    else $ra[$array['id']][$k] = $v;
    }

    return $ra;
    }
    print_r(fetchArray($arr));
      

  6.   

    function foo($ar, &$r) {
      foreach($ar as $v)
        if($v['child']) {
          $t = $v['child'];
          unset($v['child']);
          $r[] = $v;
          foo($t, $r);
        }else
          $r[] = $v;
    }$arr_data = array();
    foo($ar, $arr_data);
      

  7.   

    kao,怎么贴上去这么乱,lz copy到本地测试下吧.