我有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);
感谢并欢迎所有建议
您需要修改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];
}
}
array_unique()可以为你做到这一点。