二维数组去重

    /**
     * 给数组排重
     * 与array_unique函数的区别:它要求val是字符串,而这个可以是数组/对象
     *
     * @param unknown_type $arr 要排重的数组
     * @param unknown_type $reserveKey 是否保留原来的Key
     * @return unknown
     */
    function m_ArrayUnique($arr, $reserveKey = false)
    {
        if (is_array($arr) && !empty($arr))
        {
            foreach ($arr as $key => $value)
            {
                $tmpArr[$key] = serialize($value) . '';
            }
            $tmpArr = array_unique($tmpArr);
            $arr = array();
            foreach ($tmpArr as $key => $value)
            {
                if ($reserveKey)
                {
                    $arr[$key] = unserialize($value);
                }
                else
                {
                    $arr[] = unserialize($value);
                }
            }
        }
        return $arr;
    }

posted on 2016-11-15 16:35  *孤独的夜行者*  阅读(930)  评论(0编辑  收藏  举报

导航