dongxie3681 2014-10-06 22:07
浏览 63

php使用递归从多维关联数组中删除重复项

I'm trying to remove duplicated entries where value and type are both equal on a multidimensional associative array, but only using recursion and without array_unique. All keys are associative.

I tried this, and I'm getting the same result as the main array. My logic seems to fail me at this late hour.

function rmDuplicates(&$array) {
  $uniqueArray = array();
  foreach($array as $k=>$v) {
     if (is_array($v)) {
       $uniqueArray[$k] = rmDuplicates($v);
     } else {
       if (!in_array($v, $uniqueArray)) {
         $uniqueArray[] = $v;
       }
     }
  }
  return $uniqueArray;
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 求差集那个函数有问题,有无佬可以解决
    • ¥15 【提问】基于Invest的水源涵养
    • ¥20 微信网友居然可以通过vx号找到我绑的手机号
    • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
    • ¥15 解riccati方程组
    • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
    • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
    • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
    • ¥50 树莓派安卓APK系统签名
    • ¥65 汇编语言除法溢出问题