美文网首页
PHP 多维数组去重

PHP 多维数组去重

作者: 江R | 来源:发表于2022-08-31 15:15 被阅读0次

在网上找到很简洁的实用的方法:
1、使用“array_map('serialize', $arr)”将多维数组转换为以字符串形式的一维数组。

2、使用array_unique()去除一维数组中的重复值。

3、将去重后的一维数组重新转为多维数组。

实例:

function array_unique_new($arr) {
    $t = array_map('serialize', $arr);
    //利用serialize()方法将数组转换为以字符串形式的一维数组
    $t = array_unique($t);
    //去掉重复值
    $new_arr = array_map('unserialize', $t);
    //然后将刚组建的一维数组转回为php值
    return $new_arr;
}

以上就是本次主题的所有内容了,下面是自己跟进PHP可用函数,仿写的一个去重函数可忽略。

/**
     * 二维数组去重
     * @param array $arr
     * @return array
     */
    private static function arrayUnique ($data=[])
    {
        $tmp = array();
        foreach ($data as $key => $value) {
            foreach ($value as $key1 => $value1) {
                $value[$key1] = $key1 . '_|_' . $value1;
            }
            $tmp[$key] = implode(',|,', $value);
        }
        $tmp = array_unique($tmp);
        $newArr = array();
        foreach ($tmp as $k => $tmp_v) {
            $tmp_v2 = explode(',|,', $tmp_v);
            foreach ($tmp_v2 as $k2 => $v2) {
                $v2 = explode('_|_', $v2);
                $tmp_v3[$v2[0]] = $v2[1];
            }
            $newArr[$k] = $tmp_v3;
        }
        return $newArr;
    }

相关文章

  • php 多维数组去重

    已知问题 递归处理的时候, 如果是关联数组并且有不同的 key 有相同的 value 的时候, 会被去除一个

  • PHP 多维数组去重

    在网上找到很简洁的实用的方法:1、使用“array_map('serialize', $arr)”将多维数组转换为...

  • js数组扁平化和数组去重处理(对比)

    数组扁平化(多维数组)(es6) 数组去重 (es6) 数组去重(es5)

  • php多维混合数组转一维数组的函数

    php多维混合数组转一维数组的函数 php语言本身没有将多维数组转为一维数组的函数,但是我们可以自己写一个php函...

  • PHP 数组操作

    多维数组的各种操作 1、多维数组排序: 应用例子: 2、数组合并: 3、二维数组去重: 一维数组的各种操作

  • PHP Day4:基础回顾与加强

    多维数组 多维数组指的是包含一个或多个数组的数组。 PHP 能理解两、三、四或五级甚至更多级的多维数组。不过,超过...

  • PHP数组去重

    PHP数组去重 array_unique: 此函数为数组翻转,也就是将原数组的键值翻转为键名,将原数组的键名翻转为...

  • PHP 数组去重

    数组:$arr = [2,1,2,14,46,79]; 1.使用array_unique方法进行去重 2.使用ar...

  • php数组去重

    input);result_01);

  • JS方法数组方法reduce方法常用实例总结

    数组求和 数组项相乘 数组项计数 数组项去重 多维维数组转一维数组 数组对象指定字段求和 示例代码

网友评论

      本文标题:PHP 多维数组去重

      本文链接:https://www.haomeiwen.com/subject/mhydnrtx.html