Php 分组元素数组依赖密钥检查?
我有一个数组:Php 分组元素数组依赖密钥检查?,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有一个数组: Array ( [0] => Array ( [id] => 0 [type] => type1 [aa] => 1.00 [bb] => 0.00 [cc] => 1.00 [group] => new ), [1] => Array
Array
(
[0] => Array
(
[id] => 0
[type] => type1
[aa] => 1.00
[bb] => 0.00
[cc] => 1.00
[group] => new
),
[1] => Array
(
[id] => 1
[type] => type2
[aa] => 1.00
[bb] => 0.00
[cc] => 1.00
[group] => new
),
[2] => Array
(
[id] => 4521081
[type] => type3
[aa] => 1.00
[bb] => 0.00
[cc] => 1.00
[group] => old
)
);
如何对上述数组基键检查进行分组。结果如下:
Array(
'new'=>array(
'type1'=>array(
[id] => 0
[aa] => 1.00
[bb] => 0.00
[cc] => 1.00
),
'type2'=>array(
[aa] => 1.00
[bb] => 0.00
[cc] => 1.00
)
),
'old'=>array(
'type3'=>array(
[aa] => 1.00
[bb] => 0.00
[cc] => 1.00
)
)
);
试试这个:
$res = array();
foreach($your_array as $val){
$res[$val['group']][$val['type']]['id'] = $val['id'];
$res[$val['group']][$val['type']]['aa'] = $val['aa'];
$res[$val['group']][$val['type']]['bb'] = $val['bb'];
$res[$val['group']][$val['type']]['cc'] = $val['cc'];
}
echo "<pre>";
print_r($res);
$res=array();
foreach($val形式的_数组){
$res[$val['group'][$val['type']['id']=$val['id'];
$res[$val['group'][$val['type']['aa']=$val['aa'];
$res[$val['group'][$val['type']['bb']=$val['bb'];
$res[$val['group'][$val['type']['cc']=$val['cc'];
}
回声“;
印刷品(港币);;
我有:
它有更大的尺寸,但看起来很漂亮,有时您也需要分组。您是否尝试过使用
foreach
?
foreach( $array as $each )
{
$tmp = $each;
unset( $tmp['group'],$tmp['type'] );
$output[$each['group']][$each['type']] = $tmp;
}
foreach($array as $each)
{
$output[$each['group']] = $each;
}