本文实例讲述了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 )
二维数组的重复项:
对于二维数组咱们分两种情况讨论,一种是因为某一键名的值不能重复,删除重复项;另一种因为内部的一维数组不能完全相同,而删除重复项,下面举例说明:
因为某一键名的值不能重复,删除重复项
<?phpfunction 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程序设计有所帮助。
新闻热点
疑难解答
图片精选