您现在的位置是:网站首页> php专栏 常见问题
php面试题-数组去重问题
亦然2019-04-03 00:40:10【常见问题】人已围观
简介很早面试的时候遇到的一道数组题,觉得挺有趣的,拿出来分享一下!
1.面试题
解题思路:首先这是一个多维关联数组,很明显就是需要去除重复的元素。
方法1:把多维函数转为一维函数,使用php内置函数array_unique()去掉重复的值,再转为php值
function super_unique($array) { // 序列化数组元素,去除重复 $result = array_map(\'unserialize\',array_unique(array_map(\'serialize\', $array))); return $result; } var_dump(super_unique($arr));
方法2:
function array_unique2($arr){ $new_arr = array(); foreach ($arr as $key => $v) { $v = join(",", $v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串 $temp[] = $v; } $temp = array_unique($temp); //去掉重复的字符串,也就是重复的一维数组 foreach ($temp as $k => $v) { $temp[$k] = explode(",", $v); //再将拆开的数组重新组装 array_push($new_arr, $temp[$k]); } return $new_arr; }
很赞哦!()
上一篇: 这已经是第一篇了!
下一篇:api接口限制访问