php三维数组去重(示例代码)

假设叫数组 $my_array;


代码如下:

// 新建一个空的数组.
$tmp_array = array();

$new_array = array();

// 1. 循环出所有的行. ( $val 就是某个行)
foreach($my_array as $k => $val){

$hash = md5(json_encode($val));
    if (in_array($hash, $tmp_array)) {
        echo('这个行已经有过了');
    }else{
        // 2. 在 foreach 循环的主体中, 把每行数组对象得hash 都赋值到那个临时数组中.
        $tmp_array[] = $hash;
        $new_array[] = $val;
    }
}

print_r($new_array);

$new_array 即为筛选后无重复数据的数组。

(0)

相关推荐

  • PHP二维数组去重算法

    需求 现在有下面一组二维数组: array(8) { [0]=> array(2) { ["name"]=> string(4) "name" ["value"]=> string(6) "青叶" } [1]=> array(2) { ["name"]=> string(5) "phone" ["value"]=> string(1

  • php二维数组合并及去重复的方法

    本文实例讲述了php二维数组合并及去重复的方法.分享给大家供大家参考.具体实现方法如下: $arr = array_merge($labels,$label); //合并需要合并的俩个数组 $key = id;//去重条件 $tmp_arr = array();//声明数组 foreach($arr as $k => $v) { if(in_array($v[$key], $tmp_arr)) //搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true { unset($arr

  • PHP数组去重比较快的实现方式

    概述 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组.这个函数大多数情况下都能工作得很好.但是,如果你尝试在一个大的数组里使用array_unique()函数,它会运行地慢一些. 有一个比较好而且更快的函数array_flip()来替代使用array_unique()函数来创建唯一的数组.这个魔法般的函数会交换数组里面每一个元素的键和值,因为键值必须唯一,因此,你会得到跟array_unique()函数一样的结果. 更快的方式实现PHP

  • PHP的数组中提高元素查找与元素去重的效率的技巧解析

    提高查找数组元素的效率 1.php in_array方法说明 php查找数组元素是否存在,一般会使用in_array方法. bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] ) 参数说明: needle 待搜索的值,如果needle是字符串,比较是区分大小写的. haystack 用来比较的数组 strict 如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 n

  • PHP二维数组的去重问题解析

    之前写了一篇关于数组去重的文章,但是仅限于一维数组.下面的函数可以用于二维数组: 复制代码 代码如下: //二维数组去掉重复值 function array_unique_fb($array2D) { foreach ($array2D as $v) { $v = join(",",$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串 $temp[] = $v; } $temp = array_unique($temp); //去掉重复的字符串,也就是重复的一

  • php数组去重实例及分析

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

  • php数组去重复数据示例

    以数字开头的重复数据如: 复制代码 代码如下: Array ( [0] => 100 [k1] => 100 [1] => 2123 [k2] => 2123  ) 该方法可以将以数字为key的值去掉,先将数组按照key倒序排序,然后用array_unique的方法将重复的值去掉.不能适用于下面的情况:不同的key值存在相同的value的情况 复制代码 代码如下: function array_unique_value($arr = array()){      array_mul

  • PHP编程快速实现数组去重的方法详解

    本文实例讲述了PHP编程快速实现数组去重的方法.分享给大家供大家参考,具体如下: 概述 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组.这个函数大多数情况下都能工作得很好.但是,如果你尝试在一个大的数组里使用array_unique()函数,它会运行地慢一些. 有一个比较好而且更快的函数array_flip()来替代使用array_unique()函数来创建唯一的数组.这个魔法般的函数会交换数组里面每一个元素的键和值,因为键值必须唯一,

  • php冒泡排序、快速排序、快速查找、二维数组去重实例分享

    一.冒泡排序 复制代码 代码如下: //冒泡排序function bubble_sort($array){    $count=count($array);    if($count <= 0){        return false;    }    for($i=0;$i<$count;$i++){        for($j=0;$j<$count-$i-1;$j++){            if( $array[$j] > $array[$j+1] ){        

  • PHP二维数组去重实例分析

    本文实例分析了PHP二维数组去重的方法.分享给大家供大家参考,具体如下: 都知道一维数组去重用系统函数 array_unique($arr) 然后今天我用到二维数组了,也想去重,百度一大堆,都是将二维转一维 然后使用array_unique($arr) 看得我很恼火,所以决定自己写一个.比他的简单好懂,记录下来,以备后用 header('content-type:text/html;charset=utf8'); $arr = array( array('id'=>1,'psid'=>'P10

  • 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 {                 

随机推荐