使用PHP怎么对一维数组与二维数组进行去重功

本篇文章给大家分享的是有关使用PHP怎么对一维数组与二维数组进行去重功,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

一维数组的重复项:

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

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

结果如下:

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

二维数组的重复项:

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

因为某一键名的值不能重复,删除重复项

<?php
function assoc_unique($arr, $key)
{
  $tmp_arr = array();
  foreach($arr as $k => $v)
  {
    if(in_array($v[$key], $tmp_arr))//搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true
    {
     unset($arr[$k]);
    }
    else {
     $tmp_arr[] = $v[$key];
    }
  }
  sort($arr); //sort函数对数组进行排序
  return $arr;
}
$aa = array(
  array('shopId' => 1),
  array('shopId' => 1),
  array('shopId' => 2),
  array('shopId' => 2)
);
$key = 'id';
$result = assoc_unique($aa, $key);
print_r($result);
?>

显示结果为:

Array ( [0] => Array ( [shopId] => 1 ) [1] => Array ( [shopId] => 2 ))

以上就是使用PHP怎么对一维数组与二维数组进行去重功,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。