php 二维数组 键值 去重,PHP 二维数组去重(保留各个键值的同时去除重复的项)...

对于如下二维数组,要求对其进行去重:

$arr = array(

''=>array(

'name'=>'james',

'age'=>,

),

''=>array(

'name'=>'susu',

'age'=>,

),

''=>array(

'name'=>'james',

'age'=>,

),

'new'=>array(

'name'=>'kube',

'age'=>,

),

'list'=>array(

'name'=>'kube',

'age'=>,

),

);

二维数组内部的一维数组因某一个键值不能相同,删除重复项:

/*针对某一个键值来进行去重*/

$arr= array(……); //同上的二维数组

functionsecond_array_unique_bykey($arr, $key){

$tmp_arr = array();

foreach($arr as $k => $v)

{

if(in_array($v[$key], $tmp_arr)) //搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true

{

unset($arr[$k]); //销毁一个变量 如果$tmp_arr中已存在相同的值就删除该值

}

else {

$tmp_arr[$k] = $v[$key]; //将不同的值放在该数组中保存

}

}

//ksort($arr); //ksort函数对数组进行排序(保留原键值key) sort为不保留key值

return $arr;

}

$key ='name';

$arr_key = second_array_unique_bykey($arr,$key);

printf("As for the givenkey->%s:
",$key);

print_r($arr_key);

echo "
";

输出结果:

As for the given key->name:

Array (

[] => Array ( [name] => james [age] => )

[] => Array ([name] => susu [age] => )

[] => Array ( [name] => kube [age]=> )

)

PHP二维数组去重(指定键名)

本例对二维数组中某个指定键名进行去重,发现网上大多使用array_unique或是foreach遍历等方式去重,效果不佳且较为繁琐. 本文以二维数组去重为引,介绍array_column函数的三种用法 ...

PHP 二维数组按某一个键值排序

一.前言 在某个项目中,需要读取某个文件夹下的所有文件,在本地的 Windows 环境下时,读取出来的二维数组的文件名称和在 Windows 文件夹的文件排序一致, 但是项目上线后,环境为 Linux ...

php二维数组去重

php二维数组去重 前言:php一维数组去重很简单,直接array_unique($arr)即可,但是二维数组去重就得自己去写了 二维数组去重方法: /* * 二维数组去重 * 注意:二维数组中的元素 ...

VB6 二维数组去重实现

关于VB6的二维数组去重算法实现 当然,这里还是有局限性,当我们的数组被填满了各个不同的值时,例如下方 700*700 = 490000 就要While49万次,这谁受得了? 所以以下仅适合小规模使用 ...

如何使用python将二维数组去重呢?

二维数组的去重,能和一维的方法类似吗?import numpyc=np.array(((1,2),(3,4),(5,6),(7,8),(7,8),(3,4),(1,2)))print('二维数组:\n ...

np.unique()对一维和二维数组去重

numpy.unique(ar, return_index=False, return_inverse=False, return_counts=False, axis=None)[source] 一 ...

PHP 二维数组去重方法

php二维数组的去重策略,如果需要根据某字段去重(其他字段可能不一致),那么需要使用循环策略,如果去重的都是相同的(字段,值),那么可以用序列化方式. $allComments = array_map ...

一个有用的排序函数,array_multisort(),下面的一个用法是根据二维数组里的一个字段值的大小,对该二维数组进行重新排序

从二维数组$cashes中取出一列 'store_id'(二维数组中的每个一维数组都有的字段),按照这个的大小排序,对二维数组$caches里面的一维数组进行重新排序 实际应用如下 想让相同部门的排在 ...

PHP 二维数组排序 可以按指定 键值排序

<?php header("Content-Type:utf-8"); $arr = array( 0 => array( 'name' => '国际原油价格', ...

随机推荐

SQL Server数据库(SQL Sever语言 存储过程及触发器)

存储过程:就像函数一样的会保存在数据库中-->可编程性-->存储过程 创建存储过程: 保存在数据库表,可编程性,存储过程create proc jiafa --需要的参数@a int,@b ...

sqlserver 索引

什么是索引 拿汉语字典的目录页(索引)打比方:正如汉语字典中的汉字按页存放一样,SQL Server中的数据记录也是按页存放的,每页容量一般为4K .为了加快查找的速度,汉语字(词)典一般都有按拼音. ...

ajaxFileUpload - Post file and data together

jQuery.extend({ createUploadIframe: function(id, uri) { //create frame var frameId = 'jUploadFrame' ...

理解js中的原型链,prototype与&lowbar;&lowbar;proto&lowbar;&lowbar;的关系

说到prototype,就不得不先说下new的过程. 我们先看看这样一段代码: 1

codevs1304 拓扑序计数

题目描述                     Description 求一颗有根树/树形图的拓扑序个数. 输入描述                 Input Description        ...

swift之属性

知识点总结: 1.存储属性 struct Town{ let region = "South" //只读属性 var population = //读写属性 } 2.惰性存储属性 ...

Django-ORM多表操作(进阶)

一.创建模型 下面我们通过图书管理系统,来设计出每张表之间的对应关系. 通过上图关系,来定义一下我们的模型类. from django.db import models class Book(mode ...

IO流(3)—字节流

IO体系: 抽象基类----节点流(文件流) InputStream--FileInputStream(字节流) OutputStream--FileOutputSteam(字节流) Reader - ...

python中str函数isdigit、isdecimal、isnumeric的区别

num = "1" #unicodenum.isdigit() # Truenum.isdecimal() # Truenum.isnumeric() # True num = & ...

&lbrack;译&rsqb; 深入理解 JavaScript 事件循环(二)— task and microtask

引言 microtask 这一名词是 JS 中比较新的概念,几乎所有人都是在学习 ES6 的 Promise 时才接触这一新概念,我也不例外.当我刚开始学习 Promise 的时候,对其中回调函数的执 ...

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值