PHP去除数组中重复的元素并按键名排序函数_php技巧

1、此函数的作用:去除数组中重复的元素并按键名排序
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 = 'id';
assoc_unique(&$aa, $key);
print_r($aa);

时间: 2024-10-29 19:37:34

PHP去除数组中重复的元素并按键名排序函数_php技巧的相关文章

C# 去除数组中重复的元素简单代码

例子  代码如下 复制代码 string[] stringArray = { "aaa", "bbb", "aaa", "ccc", "bbb", "ddd", "ccc", "aaa", "bbb", "ddd" }; //List用于存储从数组里取出来的不相同的元素 List>string>

php数组函数序列之array_unique() - 去除数组中重复的元素值_php技巧

array_unique() 定义和用法 array_unique() 函数移除数组中的重复的值,并返回结果数组. 当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除. 返回的数组中键名不变. 语法 array_unique(array) 参数 描述 array 必需.规定输入的数组. 说明 array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名.这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留. 提示和注

c语言-关于去除数组中重复元素的问题

问题描述 关于去除数组中重复元素的问题 源代码:#include #include int main() { int *a; int n,i,j; scanf("%d",n); a=(int *)malloc(n*sizeof(int)); for (i=0;i<n;i++) scanf("%d",&a[i]); for (i=0;i<n;i++) for (j=1;j<n;j++) if (a[i]==a[j]) printf (&quo

PHP去除数组中的空值元素(array

说来惭愧,以前在去掉数组的空值是都是强写foreach或者while的,利用这两个语法结构来删除数组中的空元素,简单代码如下: <?php foreach($arr as $k=>$v){ if(!$v) unset($arr[$k]); } 事实证明如果数组过大的情况下这样处理的效率并不高.因为foreach是将当前操作的数组进行copy,每操作一下foreach,都是copy了一个变量,页面里面如果有太多的foreach,会是一个很大的消耗. 在网上闲逛的时候,看到人有提示用array_f

JS简单去除数组中重复项的方法_javascript技巧

本文实例讲述了JS简单去除数组中重复项的方法.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <script> var arr = ["aaa","bb

去除数组中重复的项

数组|重复 <% '======================================'作者:阿里西西'时间:2005.12.20'作用:去除数组中重复的项'======================================Function MoveR(Rstr) Dim i,SpStr SpStr = Split(Rstr,",") For i = 0 To Ubound(Spstr)  If I = 0 then   MoveR = MoveR &

PHP获取数组中重复的元素实例教程

  1.获取一个数组中重复的元素.代码如下: a.方法一: 代码如下   function array_repeat($arr) { if(!is_array($arr)) return $arr; $arr1 = array_count_values($arr); $newArr = array(); foreach($arr1 as $k=>$v) { if($v>1) array_push($newArr,$k); } return $newArr; } b.方法二: 代码如下   fu

根据一个数组中重复的元素,取出对应数组中元素

问题描述 近来遇到了点问题,请教大家下,希望给个答案,谢谢.需求(根据一个数组中重复的元素,取出对应数组中元素):有两个对应的数组:A={1,2,3,4,5},A1={a,b,a,b,c}根据数组A1中的重复原素来取出数组A中对应的元素,并且累加成字符串:1,3根据数组A1中的重复原素来取出数组A中对应的元素,并且累加成字符串:2,4根据数组A1中的不重复的元素取出数组A中对应的元素,并且累加成字符串:2,5以此类推.谢谢. 解决方案 解决方案二:首先两个数组长度相同那么索引必然也一样你只需要知

运用javascript如何去除数组中重复的数字或者字符串?

问题描述 运用javascript如何去除数组中重复的数字或者字符串? 运用javascript如何去除数组中重复的数字或者字符串?谢谢了.方法越多越好,谢谢. 解决方案 JavaScript实现数组去除重复整理 javascript 去除数组中重复项的几种方法 解决方案二: 本人只会用JAVA写