精华内容
下载资源
问答
  • PHP数组去重

    2019-10-22 17:35:09
    PHP数组去重 array_unique: 此函数为数组翻转,也就是将原数组的键值翻转为键名,将原数组的键名翻转为键值;这样以来,就会得到一组唯一键值的数组。 array_unique:移除一个数组中重复的值,返回一个拥有唯一值的...

    PHP数组去重

    • array_flip: 此函数为数组翻转,也就是将原数组的键值翻转为键名,将原数组的键名翻转为键值;这样以来,就会得到一组唯一键值的数组。
    • array_unique:移除一个数组中重复的值,返回一个拥有唯一值的数组。

    代码

    //创建一个包含重复值的,一共四个元素的数组
    $array = array('green','blue','orange','blue');
    //翻转数组,你将会得到唯一键值的数组
    $array = array_flip($array);
    //然后再翻转一次,将键和值重新放置;
    $array = array_flip($array);
    print_r($array);
    
    

    结果

    array(0=>'green',1=>'blue',2=>'orange');
    

    因为我们已经移除了一些元素,因此数组看起来不是正常的序列;如果你需要数组的键值保持数字的序列,你可以使用以下方法解决键值乱序的问题。

    • array_merge:修复数组的keys
    $array = array('green','blue','orange','blue');
    $array = array_flip($array);
    $array = array_flip($array);
    $array = array_merge($array);
    print_r($array);
    
    • array_keys:修复数组的keys
    $array = array('green','blue','orange','blue');
    $array = array_flip($array);
    //跟第一个例子一样,但是现在我们先提取数组的键值 
    $array = array_keys($array);
    

    结论

    非常简单,比起在大数组使用array_unique函数,有了一个有效的性能提升。

    展开全文
  • php的二维数组去重,数据结构重建和js数组去重最简方法
  • php 数组去重

    2017-02-17 12:00:00
    php数组去重 数组中重复项的去除 2010-07-28 15:29 一维数组的重复项: 使用array_unique函数即可,使用实例如下: <?php$aa=array("apple","banana","pear","apple","wail","wate...

    php 数组去重

    数组中重复项的去除
    2010-07-28 15:29

    一维数组的重复项

           使用array_unique函数即可,使用实例如下:

                   <?php
                       $aa=array("apple","banana","pear","apple","wail","watermalon");
                       $bb=array_unique($aa);
                       print_r($bb);
                    ?>

           结果如下:Array ( [0] => apple [1] => banana [2] => pear [4] => wail [5] => watermalon ) 。

    二维数组的重复项

          对于二维数组咱们分两种情况讨论,一种是因为某一键名的值不能重复,删除重复项;另一种因为内部的一维数组不能完全相同,而删除重复项,下面举例说明:

                ㈠因为某一键名的值不能重复,删除重复项

               <?php
                function assoc_unique($arr, $key)
                 {
                   $tmp_arr = array();
                   foreach($arr as $k => $v)
                  {
                     if(in_array($v[$key], $tmp_arr))//搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true
                    {
                       unset($arr[$k]);
                    }
                  else {
                      $tmp_arr[] = $v[$key];
                    }
                  }
                sort($arr); //sort函数对数组进行排序
                return $arr;
                }

                $aa = array(
                array('id' => 123, 'name' => '张三'),
                array('id' => 123, 'name' => '李四'),
                array('id' => 124, 'name' => '王五'),
                array('id' => 125, 'name' => '赵六'),
                array('id' => 126, 'name' => '赵六')
                );
                $key = 'id';
                assoc_unique(&$aa, $key);
                print_r($aa);
                ?>

          显示结果为:Array ( [0] => Array ( [id] => 123 [name] => 张三 ) [1] => Array ( [id] => 124 [name] => 王五 ) [2] => Array ( [id] => 125 [name] => 赵六 ) [3] => Array ( [id] => 126 [name] => 赵六 ) )

            ㈡因内部的一维数组不能完全相同,而删除重复项

                <?php
                function array_unique_fb($array2D){
                     foreach ($array2D as $v){
                         $v = join(",",$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串
                         $temp[] = $v;
                     }
                     $temp = array_unique($temp);    //去掉重复的字符串,也就是重复的一维数组
                    foreach ($temp as $k => $v){
                        $temp[$k] = explode(",",$v);   //再将拆开的数组重新组装
                    }
                    return $temp;
                }

                $aa = array(
                array('id' => 123, 'name' => '张三'),
                array('id' => 123, 'name' => '李四'),
                array('id' => 124, 'name' => '王五'),
                array('id' => 123, 'name' => '李四'),
                array('id' => 126, 'name' => '赵六')
                );
                $bb=array_unique_fb($aa);
                print_r($bb)
                ?>

              显示结果:Array ( [0] => Array ( [0] => 123 [1] => 张三 ) [1] => Array ( [0] => 123 [1] => 李四 ) [2] => Array ( [0] => 124 [1] => 王五 ) [4] => Array ( [0] => 126 [1] => 赵六 ) )  

    转载于:https://www.cnblogs.com/clphp/p/6409241.html

    展开全文
  • 主要介绍了PHP数组去重的更快实现方式,结合实例形式对比分析了php实现数组去重的各种常见操作技巧与注意事项,需要的朋友可以参考下
  • 主要是介绍了php数组去重实例及分析。需要的朋友可以过来参考下,希望对大家有所帮助
  • php数组去重

    2018-06-27 16:12:13
    更快的数组去重方法php有一个键值互换的方法array_flip,我们可以使用这个方法去重,因为键值互换,原来重复的值会变为相同的键。 然后再进行一次键值互换,把键和值换回来则可以完成去重。...

    2.使用array_unique方法去重效率


    3.更快的数组去重方法

    php有一个键值互换的方法array_flip,我们可以使用这个方法去重,因为键值互换,原来重复的值会变为相同的键。 
    然后再进行一次键值互换,把键和值换回来则可以完成去重。

    展开全文
  • 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组,通过本文给大家介绍PHP数组去重比较快的实现方式,需要的朋友参考下本
  • php数组去重的小例子,供初学者参考。复制代码 代码如下:function assoc_unique($arr, $key) {$tmp_arr = array();foreach($arr as $k => $v) {if(in_array($v[$key], $tmp_arr)) {unset($arr[$k]);} else {$...

    php中数组去重的小例子,供初学者参考。

    复制代码 代码如下:

    function assoc_unique($arr, $key) {

    $tmp_arr = array();

    foreach($arr as $k => $v) {

    if(in_array($v[$key], $tmp_arr)) {

    unset($arr[$k]);

    } else {

    $tmp_arr[] = $v[$key];

    }

    }

    sort($arr);

    return $arr;

    }

    $aa = array(

    array('id' => 123, 'name' => '张三'),

    array('id' => 123, 'name' => '李四'),

    array('id' => 124, 'name' => '王五'),

    array('id' => 125, 'name' => '赵六'),

    array('id' => 126, 'name' => '赵六')

    );

    $key = 'name';

    assoc_unique(&$aa, $key);

    print_r($aa);

    ?>

    展开全文
  • php数组去重的小例子,供初学者参考
  • Php 数组去重

    千次阅读 2017-05-10 17:38:17
    1.使用array_unique方法进行去重   2.使用array_filp方法去重   总结: 在大数组中,array_filp 比 array_unique() 效率要高很多。
  • PHP 数组去重

    2019-08-08 12:26:34
    <?php function assoc_unique($arr, $key) { $tmp_arr = array(); foreach($arr as $k => $v) { var_dump($v[$key]); if(in_array($v[$key], $tmp_arr)) { ...
  • function assoc_unique($arr, $key) {$tmp_arr = array();foreach($arr as $k => $v) {if(in_array($v[$key], $tmp_arr)) {unset($arr[$k]);} else {$tmp_arr[] = $v[$key];}}sort($arr);return $arr;...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,960
精华内容 1,984
关键字:

php数组去重