php三维数组去重(示例代码)
// 新建一个空的数组.
$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 即为筛选后无重复数据的数组。
相关推荐
-
php数组去重实例及分析
一维数组的重复项: 使用array_unique函数即可,使用实例如下: 复制代码 代码如下: <?php $aa=array("apple","banana","pear","apple","wail","watermalon"); $bb=array_unique($aa);
-
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 {
-
PHP二维数组去重算法
需求 现在有下面一组二维数组: array(8) { [0]=> array(2) { ["name"]=> string(4) "name" ["value"]=> string(6) "青叶" } [1]=> array(2) { ["name"]=> string(5) "phone" ["value"]=> string(1
-
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二维数组的去重问题解析
之前写了一篇关于数组去重的文章,但是仅限于一维数组.下面的函数可以用于二维数组: 复制代码 代码如下: //二维数组去掉重复值 function array_unique_fb($array2D) { foreach ($array2D as $v) { $v = join(",",$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串 $temp[] = $v; } $temp = array_unique($temp); //去掉重复的字符串,也就是重复的一
-
PHP数组去重比较快的实现方式
概述 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组.这个函数大多数情况下都能工作得很好.但是,如果你尝试在一个大的数组里使用array_unique()函数,它会运行地慢一些. 有一个比较好而且更快的函数array_flip()来替代使用array_unique()函数来创建唯一的数组.这个魔法般的函数会交换数组里面每一个元素的键和值,因为键值必须唯一,因此,你会得到跟array_unique()函数一样的结果. 更快的方式实现PHP
-
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编程快速实现数组去重的方法.分享给大家供大家参考,具体如下: 概述 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组.这个函数大多数情况下都能工作得很好.但是,如果你尝试在一个大的数组里使用array_unique()函数,它会运行地慢一些. 有一个比较好而且更快的函数array_flip()来替代使用array_unique()函数来创建唯一的数组.这个魔法般的函数会交换数组里面每一个元素的键和值,因为键值必须唯一,
-
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 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] ){
随机推荐
- 简述MySQL分片中快速数据迁移
- 详解oracle中通过触发器记录每个语句影响总行数
- AngularJS ng-blur 指令详解及简单实例
- asp.net生成静态页并分页+ubb第1/2页
- js过滤特殊字符输入适合输入、粘贴、拖拽多种情况
- php number_format() 函数通过千位分组来格式化数字的实现代码
- PHP中Notice错误常见解决方法
- C++高级程序员成长之路
- C#中委托用法实例分析
- 详解C语言中Char型指针数组与字符数组的区别
- CentOS mysql安装系统方法
- html小技巧之td,div标签里内容不换行
- Centos 源
- SQL server 2008 数据库优化常用脚本
- Oracle 11g 安装配置方法图文教程
- JS获取下拉框显示值和判断单选按钮的方法
- IIS7无法读取配置文件解决办法
- 教你制作Android中炫酷的ViewPagerIndicator(不仅仿MIUI)
- C++ 字符串去重排序实例代码
- 浅谈web项目读取classpath路径下面的文件