以下是 “两种php去除二维数组的重复项方法” 的完整攻略:
方法一:使用array_unique函数
array_unique()
函数可以去除数组中的重复项,包括二维数组。使用此方法需要注意的是,array_unique()
函数只能对一维数组去重,因此我们还需要配合使用 array_map()
函数实现多维数组去重。
示例代码如下:
$arr = array(
array('id' => 1, 'name' => 'John'),
array('id' => 2, 'name' => 'Jane'),
array('id' => 1, 'name' => 'John')
);
// 使用array_map调用array_unique函数进行去重
$result = array_map('unserialize', array_unique(array_map('serialize', $arr)));
print_r($result);
该示例代码的输出结果为:
Array
(
[0] => Array
(
[id] => 1
[name] => John
)
[1] => Array
(
[id] => 2
[name] => Jane
)
)
方法二:使用foreach循环遍历
使用 foreach
循环遍历该二维数组,再结合 in_array
函数判断子数组中的元素是否在新的数组中已经存在,如果不存在则将该子数组加入新的数组中。
示例代码如下:
$arr = array(
array('id' => 1, 'name' => 'John'),
array('id' => 2, 'name' => 'Jane'),
array('id' => 1, 'name' => 'John')
);
$new_arr = array();
foreach($arr as $val){
if(!in_array($val, $new_arr)){
$new_arr[] = $val;
}
}
print_r($new_arr);
该示例代码的输出结果为:
Array
(
[0] => Array
(
[id] => 1
[name] => John
)
[1] => Array
(
[id] => 2
[name] => Jane
)
)
以上就是 “两种php去除二维数组的重复项方法”的完整攻略。其中方法一使用了一些内置函数实现,而方法二则是通过手动循环直接去除重复项。可以根据实际需求选择不同的方法。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:两种php去除二维数组的重复项方法 - Python技术站