Array ( [0] => Array ( [id] => 0 [tablename] => 显卡 [pinpai] => 耕昇 [xinghao] => DDD ) [1] => Array ( [id] => 1 [tablename] => 显示器 [pinpai] => LG [xinghao] => TTT ) [2] => Array ( [id] => 2 [tablename] => 显卡 [pinpai] => 耕昇 [xinghao] => 456 ) [3] => Array ( [id] => 3 [tablename] => 显卡 [pinpai] => 讯景 [xinghao] => dfdfdf ) ) 
如何将这个数组变为下面的数组呢
Array ( [显卡] => Array ( [耕昇] => Array([0]=>DDD [1]=>456) [讯景]=>Array([0]=>dfdfdf))[显示器]=>Array([LG]=>Array[TTT]))
大家有什么好的方法么?我写了一下午了,写了好多循环,循环的自己都迷糊了。

解决方案 »

  1.   

    ...,下次记得把数组格式整理好再贴出来.
    $array = array(
    array("id"=>0,"tablename"=>"显卡","pinpai"=>"耕昇","xinghao"=>"DDD")
       ,array("id"=>1,"tablename"=>"显示器","pinpai"=>"LG","xinghao"=>"TTT")
       ,array("id"=>2,"tablename"=>"显卡","pinpai"=>"耕昇","xinghao"=>"456")
       ,array("id"=>0,"tablename"=>"显卡","pinpai"=>"讯景","xinghao"=>"dfdfdf")
    );
    foreach($array as $k=>$v)
    {
    $new[$v['tablename']][$v['pinpai']][] = $v['xinghao'];
    }
    echo "<pre/>";
    print_r($new);