共计 977 个字符,预计需要花费 3 分钟才能阅读完成。
PHP 中二维数组去重的方法有以下几种:
- 使用 array_unique() 函数:该函数可以用于去除数组中的重复值,包括二维数组。但是该方法只能去除第一维数组中的重复值,对于第二维数组无效。
$array = array(array("apple", "banana"),
array("apple", "banana"),
array("orange", "banana")
);
$result = array_map("unserialize", array_unique(array_map("serialize", $array)));
print_r($result);
- 使用 array_map() 函数和 array_walk_recursive() 函数结合:利用 array_map() 函数将数组转换成字符串,再使用 array_walk_recursive() 函数处理第二维数组,最后使用 array_unique() 函数去除重复值。
$array = array(array("apple", "banana"),
array("apple", "banana"),
array("orange", "banana")
);
$result = array_map("unserialize", array_unique(array_map("serialize", $array)));
array_walk_recursive($result, function (&$value) {$value = unserialize($value);
});
print_r($result);
- 使用循环遍历和 in_array() 函数:通过循环遍历二维数组,使用 in_array() 函数判断当前元素是否已存在于结果数组中,如果不存在则添加进结果数组。
$array = array(array("apple", "banana"),
array("apple", "banana"),
array("orange", "banana")
);
$result = array();
foreach ($array as $item) {if (!in_array($item, $result)) {$result[] = $item;
}
}
print_r($result);
以上是几种常用的二维数组去重方法,根据实际情况选择适合的方法即可。
丸趣 TV 网 – 提供最优质的资源集合!
正文完