例子 这个是关联查询出来的数据(user表与share分享表的数据)
/*
*uname 是用户名
*share_type 分享类型
*count(a.share_type) 该分类的总数
*/
$data =Array
(
[0] => Array
(
[uname] => 测试
[share_type] => 1
[count(a.share_type)] => 8
)
[1] => Array
(
[uname] => 测试
[share_type] => 2
[count(a.share_type)] => 1
)
[2] => Array
(
[uname] => 测试
[share_type] => 3
[count(a.share_type)] => 1
)
[3] => Array
(
[uname] => css
[share_type] => 1
[count(a.share_type)] => 6
)
[4] => Array
(
[uname] => css
[share_type] => 2
[count(a.share_type)] => 2
)
)
我们一般把uname先拿出来,放在一维数组里面
$new_arr = array();//存放重装后的数组
$uname_arr=array();//存放要进行判断的字段
$count=0;//用来做重装数组的key
foreach ($data as $key=>$val){
if(in_array($val['uname'],$uname_arr)){
if($val['share_type']==1){
$new_arr [$count]['share_type1']=$val['count(a.share_type)'];
}elseif($val['share_type'] == 2){
$new_arr [$count]['share_type2']=$val['count(a.share_type)'];
}
}else{
$uname_arr []=$val['uname']; //当uname第一次进来的时候,就把 它存在一维数组里面去。用到uname第二次进去 就能做判断
$new_arr []=$val;
}
}
print_r($new_arr);