数组结构如下:
现需要把e_name的值相同的数组合并成为一个数组,该如何处理
Array
(
[0] => Array
(
[create_uid] => 4973
[contact_num] => 2
[customer_num] => 2
[visitor_num] => 0
[appoint_num] => 0
[e_name] => 张三
) [1] => Array
(
[create_uid] => 5564
[contact_num] => 4
[customer_num] => 3
[visitor_num] => 0
[appoint_num] => 0
[e_name] => 李四
) [2] => Array
(
[create_uid] => 4973
[contact_num] => 0
[customer_num] => 0
[visitor_num] => 6
[appoint_num] => 0
[e_name] => 张三
) [3] => Array
(
[create_uid] => 5564
[contact_num] => 0
[customer_num] => 0
[visitor_num] => 6
[appoint_num] => 0
[e_name] => 李四
) [4] => Array
(
[create_id] => 4973
[contact_num] => 0
[customer_num] => 0
[visitor_num] => 0
[appoint_num] => 8
[e_name] => 张三
) [5] => Array
(
[create_id] => 5564
[contact_num] => 0
[customer_num] => 0
[visitor_num] => 0
[appoint_num] => 8
[e_name] => 李四
)
)
$arr = array();$result = array();
foreach($arr as $val ) {
$result[$val['e_name']] = $val;
}
print_r($result);
?>
需要处理成以下的数组
Array
(
[0] => Array
(
[create_uid] => 4973
[contact_num] => 2
[customer_num] => 2
[visitor_num] => 6
[appoint_num] => 8
[e_name] => 张三
) [1] => Array
(
[create_uid] => 5564
[contact_num] => 4
[customer_num] => 3
[visitor_num] => 6
[appoint_num] => 8
[e_name] => 李四
)
)
[visitor_num] => 6
[appoint_num] => 8这几项是相加对吗
$ar=array();
foreach($array as $v){
if(!$ar[$v[e_name]]){
$ar[$v[e_name]]=$v;
}else{
$ar[$v[e_name]][contact_num]+=$v[contact_num];
$ar[$v[e_name]][customer_num]+=$v[customer_num];
$ar[$v[e_name]][visitor_num]+=$v[visitor_num];
$ar[$v[e_name]][appoint_num]+=$v[appoint_num];
}
}
print_r(array_values($ar));Array
(
[0] => Array
(
[create_uid] => 4973
[contact_num] => 2
[customer_num] => 2
[visitor_num] => 6
[appoint_num] => 8
[e_name] => 张三
) [1] => Array
(
[create_uid] => 5564
[contact_num] => 4
[customer_num] => 3
[visitor_num] => 6
[appoint_num] => 8
[e_name] => 李四
))