php二维数组去重

方法一:降维去重

        if (!$isPidArrKey) {
            //降维去重
            $temp = array();
            foreach ($tmp as $k => $v) {
                $v      = implode(‘,‘, $v);
                $temp[] = $v;
            }
            $temp = array_unique($temp);
            foreach ($temp as $k => $v) {
                $temp[$k] = explode(",", $v);
            }
            $tmp = $temp;
        }

方法二:借助第三个数组去重

$idsTmp = array();
            $com    = new CacheCombusiness();
            foreach ($proInfo as $key => $value) {
                foreach ($comInfo as $k => $v) {
                    if ($value[‘cid‘] == $k) {
                        // $value[‘cid‘] = 24;
                        $comBusInfo = $com->getMore(array($value[‘cid‘]));
                        if (!empty($comBusInfo)) {
                            $value[‘qq‘] = $comBusInfo[0][‘contactArr‘][‘qq‘];
                        }
                        if (in_array($value[‘pid‘], $idsTmp)) {
                            continue;
                        }
                        $idsTmp[] = $value[‘pid‘];
                        if ($isPidArrKey) {
                            $tmp[$key] = array_merge($value, $v);
                        } else {
                            $tmp[] = array_merge($value, $v);
                        }
                    }
                }
            }
时间: 2024-11-06 11:41:14

php二维数组去重的相关文章

PHP 二维数组去重

直接上代码 //二维数组去重$data = array(    0 => array('num' => '110', 'name' => 'nick1'),    1 => array('num' => '111', 'name' => 'nick2'),    2 => array('num' => '110', 'name' => 'nick3'),    3 => array('num' => '112', 'name' =>

js 二维数组去重(续)

之前写过二维数组去重,今天再翻出来看了看,简直不忍直视,如此垃圾,所以今天重新写一下咯. 二维数组去重,重复问题一定要和哈希联系起来,js和java不一样,没有map(es6有),但是js有object,键是不会重复的,不多说,代码如下: var matrix=[ [1,2,3,4], [3,4,5,6], [1,2,3,4] ] var removeRepeat=function(arr){ var obj={}; for(var i=0;i<arr.length;i++){ // 判断当前项

PHP使用array_unique对二维数组去重处理

array_unique函数就是可以处重的,它具备了这个功能了,下面我们一来看一个关于PHP使用array_unique对二维数组去重处理例子. php 5.2.9 版本增加了array_unique对多维数组的支持,在处理多维数组是需要设置sort_flags参数 一维数组的重复项: 使用array_unique函数即可,使用实例如下: 代码如下 复制代码 <?php $aa = array("apple", "banana", "pear&quo

二维数组去重

function arrayUnique($array2){ foreach ($array2 as $key => $value) { $v=join(',',$v);//二维变成一维 $tmp[]=$v; } //一维数组去重 $tmp=array_unique($tmp); foreach ($tmp as $key => $value) { $tmp[$key]=explode(',', $value); } return $tmp; } 利用内部函数array_unique,将二维数

PHP二维数组去重的方法(保留各个键值的同时去除重复的项)-- 二维数组的唯一性

对于如下二维数组,要求对其进行去重: $arr = array( '0'=>array( 'name'=>'james', 'age'=>30, ), '1'=>array( 'name'=>'susu', 'age'=>26, ), '2'=>array( 'name'=>'james', 'age'=>30, ), 'new'=>array( 'name'=>'kube', 'age'=>37, ), 'list'=>arr

二维数组去重方法

<?php function unique_arr($array2D,$stkeep=false,$ndformat=true) { // 判断是否保留一级数组键 (一级数组键可以为非数字) if($stkeep) $stArr = array_keys($array2D); // 判断是否保留二级数组键 (所有二级数组键必须相同) if($ndformat) $ndArr = array_keys(end($array2D)); //降维,也可以用implode,将一维数组转换为用逗号连接的字

php 去掉二维数组

        /**  * 二维数组去重  * @param 数组 $array  */ function array_unique_fb($array) { foreach ($array as $key=>$v) { $str = ''; foreach ($v as  $key_=>$v_){ $str .= $key_.'@#$'.$v_.',';//键值拼接成以,分割字符串 } $str = substr($str,0,-1);     $temp[] = $str;//生成一维数

二维数组中按子数组首个元素值去重

后台更新了算法,用来挖掘数据,前台(我)配合后台搭建了新页面,历时两周,从 0 到 现在的联调完毕,呼呼,有累,但更多的是完成工作后的喜悦. 废话不多说,联调过程中遇到一个接口需要传输二维数组,是关于选择句子,然后将文档号和句子号拼接成数组,再压入大数组来向后台发送要保存的数据的. 而前台在存储时,选择的句子会直接存储其所属文档号,这样底层存储的数组就会变成对象数组: arr = [ {name:***,docNum:0,lineNum:3}, {name:***,docNum:2,lineNu

php 数组去重 (一维数组与二维数组)

数组中重复项的去除 一维数组的重复项: 使用array_unique函数即可,使用实例如下: <?php                   $aa=array("apple","banana","pear","apple","wail","watermalon");                   $bb=array_unique($aa);