PHP 二维数组去掉重复值并保持原结构
直接上代码,解释很详细
//二维数组去掉重复值
function arrunique($a){
foreach($a[0] as $k => $v){ //二维数组的内层数组的键值都是一样,循环第一个即可
$ainner[]= $k; //先把二维数组中的内层数组的键值使用一维数组保存
}
foreach ($a as $k => $v){
$v =join("、",$v); //将 值用 顿号连接起来
$temp[$k] =$v;
}
$temp =array_unique($temp); //去重
foreach ($temp as $k => $v){
$a = explode(",",$v); //拆分后的重组
$arr_after[$k]= array_combine($ainner,$a); //将原来的键与值重新合并
}
return $a;
}
就是先存下键值,然后使用join降维打击,然后用array_unique方法对一维去重,结果再用explode方法拆分,然后再array_combine方法组合键和值
array_combine()函数使用
php 两个数组合并,一个做键,一个做值
项目中遇到这么个情况,有两个数组: $afloor,$adata;
这两个数组合并为一个新数组:$acombine,使用$afloor中的值,为新数组的键名,$adata中的值为新数组相对应的值.
直接使用PHP array_combine()函数就行了,array_combine()传入2个参数,array_combine(作为键的数组,作为值的数组)。
比如: $acombine = array_combine($afloor,$adata); 。
二维数组去除重复值和array_unique函数
今天遇到了一个问题,就是从数据库中去除的数组为一个二维数组,现在就是想将二位数组进行去重,但是在php中,对于一个一维数组,我们可以直接使用php的系统函数array_unique,但是这个函数不能对 ...
php二维数组去除重复值
<?php //二维数组 $test["aa"] = array("id"=>"17","name"=> ...
PHP 按二维数组的键值排序
/** * 按二维数组的键值排序 * @param unknown $array 二维数组 * @param unknown $key 二维数组的键值 * @param string $order 升 ...
使用一个for循环将N*N的二维数组的所有值置1
PHP二维数组按照键值排序
在开发过程中,我们常常需要对二维数组按照数组的某个键来排序,这里提供两个封装好的方法,可以放到公共函数模块里以后需要的时候直接调用即可. /** * 二维数组按照键值降序排序 * @param arr ...
php如何去掉二维数组中重复的元素?
$arr=array("=>array("a","b")); 我想得到的结果是:只输出第一项(第一项和第三项相同,去第一项)和第二项这个怎么解决 ...
PHP如何去掉多维数组的重复值
1.定义函数 function array_unique_new($arr){ $t = array_map('serialize', $arr);//利用serialize()方法将数组转换为以字符 ...
php 二维数组验证一个值是否存在
php 判断数字在二维数组里 $arr = array( array('a', 'b'), array('c', 'd') ); in_array('a', $arr); // 此时返回的永远都是 f ...
PHP获取二维数组指定字段值的和
array_sum(array_column($arr, 'num')); //获取二维数组 num字段的和 $arr = [ [ 'device_uid' => '123456', 'num' ...
随机推荐
iOS-大神们的博客收集
唐巧的技术博客 OneV's Den 破船之家 NSHipster h ...
windows log
/zh-CN/sysinternals /en-us/sysinternals/bb89 ...
jquery解决onmouseover和onmouseout合用的bug问题
经常会遇到鼠标放到一个元素上显示另外一个元素,这两个元素是父子关系,比如在A上绑定mouseover和mouseout事件来显示或隐藏B元素,A元素包含B元素,当鼠标移到B元素后浏览器认为你移开了A, ...
Zookeeper Watcher 解析
1.Watcher 接口源码 1. 当客户端向zookeeper注册了watcher时,当服务器向客户端发送一个watcher事件通知时,客户端会调用回调方法process(WatchedEvent ...
Ubuntu Linux下设置IP的配置命令
Ubuntu Linux下设置IP的配置命令 今天装了Ubuntu,但是发现不能上网,开始排查问题: 1.首先确定网络连接是否正确,所用的网线是否可以正常工作 2.查看网卡是否能正常工作,检测的方法如 ...
网络编程应用:基于TCP协议【实现一个聊天程序】
要求: 基于TCP协议实现一个聊天程序,客户端发送一条数据,服务器端发送一条数据 客户端代码: package Homework1; import java.io.IOException; impor ...
cocos2d-x action执行完毕的回调
cocos2d-x action执行完毕的回调 MySprite::createOne() { .... // MUST add to sheet firstly spriteShee ...
Tkinter 项目-屏保
参考教程,以及网上资料,针对小白更好理解 关于tkinter的屏保涉及的知识点和思想 项目分析: 屏保启动方式:手动,自动 敲击键盘或者移动鼠标后,或者其他引发事件,则停止 如果屏保是一幅画的话,则没 ...
U-Mail企业邮箱如何导入授权文件
首先,由于U-Mail有Linux版本与Windows版本的区别,并且都非常简单,所以就有了下面的步骤: Windows版本 Linux版本
KO ----- 静态资源404问题
--------------------siwuxie095 KO ----- 静态资源 404 问题在 Spring ...