1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
/** * 多维数组递归去重 * @param $array2D * @return mixed */ protected function super_unique($array, $recursion = false) { // 序列化数组元素,去除重复 $result = array_map('unserialize', array_unique(array_map('serialize', $array))); // 递归调用 if ($recursion) { foreach ($result as $key => $value) { if (is_array($value)) { $result[ $key ] = super_unique($value); } } } return $result; } |
适用于二维或三维值重复去重
转载请注明:PHP笔记 » PHP多维数组按值相同去重