- <?php
- 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;
- }
复制代码提示:递归处理的时候, 如果是关联数组并且有不同的 key 有相同的 value 的时候, 会被去除一个 |