php中去一维数组的重复项可以通过php内置函数array_unique(),但是php的array_unique函数对多维数组并不适用,怎么才能去除二维数组中的重复项呢?
以下给大家提供一个函数。
//二维数组去掉重复值 function unique_arr($array2D,$stkeep=false,$ndformat=true){ $joinstr='+++++'; // 判断是否保留一级数组键 (一级数组键可以为非数字) if($stkeep) $stArr = array_keys($array2D); // 判断是否保留二级数组键 (所有二级数组键必须相同) if($ndformat) $ndArr = array_keys(end($array2D)); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串 foreach ($array2D as $v){ $v = join($joinstr,$v); $temp[] = $v; } //去掉重复的字符串,也就是重复的一维数组 $temp = array_unique($temp); //再将拆开的数组重新组装 foreach ($temp as $k => $v){ if($stkeep) $k = $stArr[$k]; if($ndformat){ $tempArr = explode($joinstr,$v); foreach($tempArr as $ndkey => $ndval) $output[$k][$ndArr[$ndkey]] = $ndval; } else $output[$k] = explode($joinstr,$v); } return $output; }
希望对大家学习php程序设计有所帮助。
本文向大家介绍两种php去除二维数组的重复项方法,包括了两种php去除二维数组的重复项方法的使用技巧和注意事项,需要的朋友参考一下 php去掉二维数组的重复值的方法总结,具体代码如下: 方法一: 方法二: 两种php去除二维数组的重复项的方法,各有利弊,大家可以根据具体情况进行选择。
本文向大家介绍PHP二维数组去重算法,包括了PHP二维数组去重算法的使用技巧和注意事项,需要的朋友参考一下 需求 现在有下面一组二维数组: 需要将处于第二维键名为name,其值相同的数组的value合并,形成一个新的数组。 比如上面代码中的name为fileds_510的两个二维数组,就应该合并为一个值为足球,棒球的数组。 思路 提到数组,再PHP中我们首先想到了循环,那么这里显然比较适合使用fo
本文向大家介绍php去除数组中重复数据,包括了php去除数组中重复数据的使用技巧和注意事项,需要的朋友参考一下 废话不多说,直接上代码 代码很简单,却非常的实用,有需要的小伙伴可以直接拿去用的。 另附上其他网友的解决办法 PHP数组去除重复项 有个内置函数array_unique (),但是php的 array_unique函数只适用于一维数组,对多维数组并不适用,以下提供一个二维数组 的 arr
问题内容: 不知道这个问题是否需要删除,但是我无法在其他地方找到答案,所以我可以去询问。 我有一个二维数组,如下所示: 我想删除那些重复的电子邮件。因此,在上述示例中,我只想删除[] [0]或[] [2]。我不担心要检查名称或类似的东西,我只需要基于单个值对子数组进行重复数据删除。 此刻我有这样的事情 但这是不对的。任何帮助表示赞赏。 问题答案: 一种使用数组索引唯一性的快速解决方案: 注意1:从
本文向大家介绍JavaScript基于对象去除数组重复项的方法,包括了JavaScript基于对象去除数组重复项的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JavaScript基于对象去除数组重复项的方法。分享给大家供大家参考,具体如下: JavaScript中,去除数组重复项是一个很常用的函数,而且在面试中也很经常被提问到.很多人在面对这个问题的时候,一般都是采用多层for循环
我开发了一个程序,获取包含用户id及其技能的用户技能数组,该数组如下: 关键是user_id,值是技能数组,现在我想搜索有两个值的user_id:english或word,我希望返回17,16,我该怎么做,谢谢你的帮助:)