提示信息

PHP实现一维数组与二维数组去重功能示例

南来风 已关注

使用array_unique函数即可,使用实例如下:

  1. <?php
  2. $aa=array("1","2","3","3","2","watermalon");
  3. $bb=array_unique($aa);
  4. print_r($bb);
  5. ?>

结果如下:

  1. Array ( [0] => 1 [1] => 2 [2] => 3 [5] => watermalon )

二维数组的重复项: 对于二维数组咱们分两种情况讨论,一种是因为某一键名的值不能重复,删除重复项;另一种因为内部的一维数组不能完全相同,而删除重复项,下面举例说明: 因为某一键名的值不能重复,删除重复项

  1. <?php
  2. function assoc_unique($arr, $key)
  3. {
  4. $tmp_arr = array();
  5. foreach($arr as $k => $v)
  6. {
  7. if(in_array($v[$key], $tmp_arr))//搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true
  8. {
  9. unset($arr[$k]);
  10. }
  11. else {
  12. $tmp_arr[] = $v[$key];
  13. }
  14. }
  15. sort($arr); //sort函数对数组进行排序
  16. return $arr;
  17. }
  18. $aa = array(
  19. array('shopId' => 1),
  20. array('shopId' => 1),
  21. array('shopId' => 2),
  22. array('shopId' => 2)
  23. );
  24. $key = 'id';
  25. $result = assoc_unique($aa, $key);
  26. print_r($result);
  27. ?>

显示结果为:

  1. Array ( [0] => Array ( [shopId] => 1 ) [1] => Array ( [shopId] => 2 ))
南来风 关注 已关注

最近一次登录:2015-12-09 21:18:57   

暂时还没有签名,请关注我或评论我的文章
×
分享到朋友圈