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 {
$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二维数组合并及去重复的方法.分享给大家供大家参考.具体实现方法如下: $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($arr) 然后今天我用到二维数组了,也想去重,百度一大堆,都是将二维转一维 然后使用array_unique($arr) 看得我很恼火,所以决定自己写一个.比他的简单好懂,记录下来,以备后用 header('content-type:text/html;charset=utf8'); $arr = array( array('id'=>1,'psid'=>'P10
-
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{
-
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数组去重实例及分析
一维数组的重复项: 使用array_unique函数即可,使用实例如下: 复制代码 代码如下: <?php $aa=array("apple","banana","pear","apple","wail","watermalon"); $bb=array_unique($aa);
-
PHP二维数组去重算法
需求 现在有下面一组二维数组: array(8) { [0]=> array(2) { ["name"]=> string(4) "name" ["value"]=> string(6) "青叶" } [1]=> array(2) { ["name"]=> string(5) "phone" ["value"]=> string(1
-
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编程快速实现数组去重的方法详解
本文实例讲述了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()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组.这个函数大多数情况下都能工作得很好.但是,如果你尝试在一个大的数组里使用array_unique()函数,它会运行地慢一些. 有一个比较好而且更快的函数array_flip()来替代使用array_unique()函数来创建唯一的数组.这个魔法般的函数会交换数组里面每一个元素的键和值,因为键值必须唯一,因此,你会得到跟array_unique()函数一样的结果. 更快的方式实现PHP
-
PHP二维数组的去重问题解析
之前写了一篇关于数组去重的文章,但是仅限于一维数组.下面的函数可以用于二维数组: 复制代码 代码如下: //二维数组去掉重复值 function array_unique_fb($array2D) { foreach ($array2D as $v) { $v = join(",",$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串 $temp[] = $v; } $temp = array_unique($temp); //去掉重复的字符串,也就是重复的一
随机推荐
- angularjs基础教程
- 海量文件复制和备份的技巧(xcopy命令实现)
- Python、PyCharm安装及使用方法(Mac版)详解
- php实现字符串首字母转换成大写的方法
- Android开发常见错误小结
- jQuery实现字符串全部替换的方法
- 浅析jQuery对select操作小结(遍历option,操作option)
- JavaScript中循环遍历Array与Map的方法小结
- js函数参数设置默认值的一种变通实现方法
- PHP实现对二维数组某个键排序的方法
- 关于Centos安装fabric遇到的问题和解决方法
- C#中Dictionary泛型集合7种常见的用法
- 再分享70+免费的jquery 图片滑块效果插件和教程
- 解决Android 沉浸式状态栏和华为虚拟按键冲突问题
- 检查表单元素的值是否为空的实例代码
- C语言 表、栈和队列详解及实例代码
- java中Struts2 的文件上传和下载示例
- php reset() 函数指针指向数组中的第一个元素并输出实例代码
- python中requests和https使用简单示例
- 详解PHP中mb_strpos的使用