下面是实现代码:
/**
**关于参数的说明
**$key键值相同的键名
**$array代表原数组
**$start代表$array[0][$key]
**$newkey代表相同键值相同的键名
**/
function
combine_same_val($array,$start,$key,$newkey){
static
$new;
foreach($array
as
$k=$v){
if($v[$key]==$start){
$new[$v[$newkey]][]
=
$v;
unset($array[$k]);
continue;
}
sort($array);
if(count($array)!==0){
combine_same_val($array,$array[0][$key],$key,$newkey);
return
① 在用mysql查询的时候,用group by (某一个字段) 将其查询结果合并;
或者;
array_unique函数提供了过滤重复的值的功能,但是该函数只能处理一维数组,如果遇到多维数组我们可以现将其转化为一维数组.示例代码如下
/*
* $data 是你要处理数据
* $result 是输出的结果
*/
//将其转化为一维数组
foreach ($data as $row) {
$row = serialize($row);
unset($row);
$data = array_unique($data);
//还原多维数组
$row = unserialize($row);
不好意思 楼主要求,我看错了,追加下面的代码
$result=array();
$tmp_arr=array();
$tmp_arr[$row['confuguarable_sku']][] = $row['size'];
//将尺寸用逗号拼接
foreach ($tmp_arr as $sku = $size) {
$result[] = array('confuguarable_sku'=$sku, 'size'=implode(",", $size));
echo "pre";
//输出结果
print_r($result);
以上就是土嘎嘎小编为大家整理的php合并相同字段的数据相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!