想把上面的数组变成下面这样的。求好的方法。
public function arr_uniqe($arr,$key)
{
$key_arr = [];
$color = [];
foreach ($arr as $k => $v) {
if(empty($color)){
$color[] = $v['color'];
$key_arr[$v['color']]['id'] = $v['id'];
$key_arr[$v['color']]['name'] = $v['name'];
$key_arr[$v['color']]['cate_id'] = $v['cate_id'];
$key_arr[$v['color']]['color'] = $v['color'];
$key_arr[$v['color']]['color_imgurl'] = $v['color_imgurl'];
$key_arr[$v['color']]['gouzao']['gouzao_'.$v['gouzao']] = $v['gouzao'];
$key_arr[$v['color']]['gouzao']['gouzao_imgurl_'.$v['gouzao']] = $v['gouzao_imgurl'];
}else{
if(in_array($v['color'],$color)){
$key_arr[$v['color']]['gouzao']['gouzao_'.$v['gouzao']] = $v['gouzao'];
$key_arr[$v['color']]['gouzao']['gouzao_imgurl_'.$v['gouzao']] = $v['gouzao_imgurl'];
}else{
$color[] = $v['color'];
$key_arr[$v['color']]['id'] = $v['id'];
$key_arr[$v['color']]['name'] = $v['name'];
$key_arr[$v['color']]['cate_id'] = $v['cate_id'];
$key_arr[$v['color']]['color'] = $v['color'];
$key_arr[$v['color']]['color_imgurl'] = $v['color_imgurl'];
$key_arr[$v['color']]['gouzao']['gouzao_'.$v['color']] = $v['gouzao'];
$key_arr[$v['color']]['gouzao']['gouzao_imgurl_'.$v['color']] = $v['gouzao_imgurl'];
}
}
}
//sort($arr);
return $key_arr;
}
附上自己的代码,感觉写的太戳了,所以想看看大神怎么写的!
如果存在就是更新 gouzao , 不存在就创建新的