1.定义函数

function array_unique_new($arr){

$t = array_map('serialize', $arr);//利用serialize()方法将数组转换为以字符串形式的一维数组

$t = array_unique($t);//去掉重复值

$new_arr = array_map('unserialize', $t);//然后将刚组建的一维数组转回为php值

return $new_arr;

}

2.定义数组

$arr = array(
array(
'sup_name' => '上海',
'cn_name' => 'EthylAcetate',
'en_name' => '乙酸乙酯1',
'pinyin' => 'yisuanyizhi',
'pro_info' => '耗材',
),
array(
'sup_name' => '上海2',
'cn_name' => 'EthylAcetate',
'en_name' => '乙酸乙酯2',
'pinyin' => 'yisuanyizhi',
'pro_info' => '耗材',
),
array(
'sup_name' => '上海4',
'cn_name' => 'EthylAcetate',
'en_name' => '乙酸乙酯1',
'pinyin' => 'yisuanyizhi',
'pro_info' => '耗材',
),
array(
'sup_name' => '上海',
'cn_name' => 'EthylAcetate',
'en_name' => '乙酸乙酯3',
'pinyin' => 'yisuanyizhi',
'pro_info' => '耗材',
),
array(
'sup_name' => '上海1',
'cn_name' => 'EthylAcetate',
'en_name' => '乙酸乙酯4',
'pinyin' => 'yisuanyizhi',
'pro_info' => '耗材',
),
array(
'sup_name' => '上海',
'cn_name' => 'EthylAcetate',
'en_name' => '乙酸乙酯3',
'pinyin' => 'yisuanyizhi',
'pro_info' => '耗材',
),
array(
'sup_name' => '上海1',
'cn_name' => 'EthylAcetate',
'en_name' => '乙酸乙酯4',
'pinyin' => 'yisuanyizhi',
'pro_info' => '耗材',
),
);

3.执行测试

$new_arr = $this->array_unique_new($arr);

echo '<pre/>';

print_r($new_arr);

PHP如何去掉多维数组的重复值的更多相关文章

  1. php如何去掉二维数组中重复的元素?

    $arr=array("=>array("a","b")); 我想得到的结果是:只输出第一项(第一项和第三项相同,去第一项)和第二项这个怎么解决 ...

  2. 二维数组去除重复值和array_unique函数

    今天遇到了一个问题,就是从数据库中去除的数组为一个二维数组,现在就是想将二位数组进行去重,但是在php中,对于一个一维数组,我们可以直接使用php的系统函数array_unique,但是这个函数不能对 ...

  3. php二维数组去除重复值

    <?php //二维数组 $test["aa"] = array("id"=>"17","name"=> ...

  4. php如何去掉二维数组中重复的元素

    $arr=array( "1"=>array("a","b "), "2"=>array("a&q ...

  5. PHP 按二维数组的键值排序

    /** * 按二维数组的键值排序 * @param unknown $array 二维数组 * @param unknown $key 二维数组的键值 * @param string $order 升 ...

  6. JS去除数组中重复值的四种方法

    JS去除数组中重复值的四种方法 1 /// <summary>            o[this[i]] = "";  }      }       newArr.p ...

  7. 使用一个for循环将N*N的二维数组的所有值置1

    <?php // 使用一个for循环将N*N的二维数组的所有值置1 $n = ; $a = []; ;$i<$n*$n;$i++){ $a[$i/$n][$i%$n] = ; } prin ...

  8. PHP二维数组按照键值排序

    在开发过程中,我们常常需要对二维数组按照数组的某个键来排序,这里提供两个封装好的方法,可以放到公共函数模块里以后需要的时候直接调用即可. /** * 二维数组按照键值降序排序 * @param arr ...

  9. php 检查该数组有重复值

    if (count($array) != count(array_unique($array))) { echo '该数组有重复值'; }

随机推荐

  1. lvs中dr模式配置脚本

    1 dr模式介绍 1.1 lvs的安装 安装具体解释:http://blog.csdn.net/CleverCode/article/details/50586957. 1.2 lvs模式 lvs有三 ...

  2. poj 2513 欧拉回路+并查集推断是否联通+Trie树

    http://poj.org/problem? id=2513 最初看到 第一感觉---map  一看250000的数据量 果断放弃 然后记得曾经看过.trie取代map.尤其当数据量特别大的时候 学 ...

  3. SQLite -- 嵌入式关系型数据库

    SQLite -- 嵌入式关系型数据库 1.SQLite的数据类型:Typelessness(无类型) 1,能够保存不论什么类型的数据到表的随意列中 2.支持常见的类型如: NULL, VARCHAR ...

  4. hdu_1394,线段树求逆序数

    http://www.notonlysuccess.com/index.php/segment-tree-complete/ #include<iostream> #include< ...

  5. hdoj--3183--A Magic Lamp(贪心)

    A Magic Lamp Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tot ...

  6. magnify.m —— 图像局部放大镜工具函数

    magnify.m 函数下载地址:magnify - File Exchange - MATLAB Central: magnify.m 函数在执行时,是一种交互式处理. 简单演示如下: clear, ...

  7. Struts2国际化-getText()方法

    转自https://blog.csdn.net/qq_43560838/article/details/83747604 一:简单理解 国际化简称i18n,其来源是英文单词 international ...

  8. Unity Shader (五)Surface Shader示例

    1.替换颜色 Shader "Custom/Example_Frag_5" { Properties { _MainTex ("Albedo (RGB)", 2 ...

  9. [Poi] Build a Vue App with Poi

    Poi uses the Vue babel presets by default, so there is no additional install required to get up-and- ...

  10. 开源企业IM-免费企业即时通讯-ENTBOOST V0.9版本号公布

    ENTBOOST V0.9版本号公布,更新内容:1.完好多人群组聊天,提高群组聊天性能及稳定性:2.苹果IOS SDK.添加联系人管理功能,优化API和内部流程.修复部分BUG.3.添加企业应用功能集 ...