php数组去重实例及分析

时间:2016.04.19 发布人:ingasnasj

php数组去重实例及分析

已解决问题

谷歌ingasnasj用户在2016.04.19提交了关于“邓稼先php数组去重实例及分析”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2025-02-23T20:16:52。希望大家能够帮助她。

详细问题描述及疑问:期待您的答案,希望你能感受到,我最真诚的谢意 !

希望以下的回答,能够帮助你。

第1个回答

用户名:baxter711  

一维数组的重复项:

使用array_unique函数即可,使用实例如下:
复制代码代码如下:
<?php
$aa=array("apple","banana","pear","apple","wail","watermalon");
$bb=array_unique($aa);
print_r($bb);
?>

结果如下:Array([0]=>apple[1]=>banana[2]=>pear[4]=>wail[5]=>watermalon)。

二维数组的重复项:

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

㈠因为某一键名的值不能重复,删除重复项
复制代码代码如下:
<?php
functionassoc_unique($arr,$key)
{
$tmp_arr=array();
foreach($arras$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('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);
?>