PHP二维数组--去除指定列含有重复项的数组
给定二维数组:
$arr = array(
'0' => array('张三',2,3,4),
'1' => array('李四',2,3,4),
'2' => array('张三',2,4,3)
);
去除第一列含有'张三'的重复项数组
源代码:
<?php
header('Content-Type: text/html; charset=utf-8');
//去除指定列含有重复项的数组
$arr = array(
'0' => array('张三',2,3,4),
'1' => array('李四',2,3,4),
'2' => array('张三',2,4,3),
);
//var_dump($arr);
$arr1 = []; //定义空数组$arr1
$arr2 = []; //定义空数组$arr2
//遍历给定数组
foreach ($arr as $v) {
if ($v[0]!='张三') {
array_push($arr1, $v); //不含重复项的数组,添加到新的空数组$arr1
}else{
array_push($arr2, $v);//含有重复项的数组,添加到新的空数组$arr2
}
}
//从含有重复项的数组中随机选取一个添加至数组$arr1
array_push($arr1, $arr2[array_rand($arr2,1)]);
//输出数组$arr1即为去重后的数组
var_dump($arr1);
效果如下图:


浙公网安备 33010602011771号