把相同的值的二维数组重装数组记录(有相同的值,合并成一条记录,这个是统计每个类别的数量)
2017-11-18 00:05
429 查看
例子 这个是关联查询出来的数据(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);
/*
*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);
相关文章推荐
- sql中怎样把同一张表中相同字段的内容合并为一条记录(不同字段的那一列每个记录后面加逗号)
- SQL 同一张表中相同字段的内容合并为一条记录(不同字段的那一列每个记录后面加逗号)
- 数组合并函数,二维数组相同字段合并到一起。
- 统计向oracle每个表中插入一条记录时 , 占用的最大空间
- PHP将二维数组某一个字段相同的数组合并起来的方法
- php数组根据某一个键值,把相同键值的合并生成一个新的二维数组
- 将数据库常用的操作(连接数据库,获得所有数据,获得一条记录,获得一列记录,获得一条索引数组,获得一条关联数组)都给封装到db.class.php里面,谁需要谁继承这个类 注意:提交封装的类文件
- 获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)
- 获取分组后取某字段最大的一条记录(求每个类别中最大的值的列表)
- PHP将二维数组某一个字段相同的数组合并起来的方法
- 获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)
- php 二维数组去重合并将相同数量累加
- 获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)
- 二维数组相同数组的字段 合并
- sql中怎样把同一张表中相同字段的内容合并为一条记录(合并的记录的后面不加逗号)?
- 获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)
- PHP 统计一维数组value相同的元素的个数num,并将其转化为下标为数字,值是value和num的二维数组
- 对二维数组某一个字段相同的数组合并起来
- php数组实现根据某个键值将相同键值合并生成新二维数组的方法
- php数组根据某一个键值,把相同键值的合并生成一个新的二维数组