我有csv文件,我正在从中读取数据,我已加入所有随机匹配的行,如品牌,客户和很快......,
这里我想从已经在数组
中的多维数组中删除所有重复项Here you can see how all duplicate values are appending to array in this image
这是我的PHP代码
$csv = array_map('str_getcsv', file('test.csv'));
//echo '<pre>';
//print_r($csv);
//exit;
$brand =[];
foreach ($csv as $key => $value) {
if(!(in_array($value[14], $brand))){
$brand[$value[21]]['brands'][]=$value[14];
$brand[$value[21]]['products'][]=$value[1];
}
}
echo '<pre>';
print_r($brand);
感谢并欢迎所有建议
答案 0 :(得分:1)
您需要修改in_array
中的查找位置。你想为我确定这一点,并检查它是否先设置:
foreach ($csv as $key => $value) {
if(!isset($brand[$value[21]]['brands']) ||
!in_array($value[14], $brand[$value[21]]['brands'])){
$brand[$value[21]]['brands'][]=$value[14];
}
if(!isset($brand[$value[21]]['products']) ||
!in_array($value[14], $brand[$value[21]]['products'])){
$brand[$value[21]]['products'][]=$value[1];
}
}
答案 1 :(得分:0)
array_unique()可以帮到你。