如下一个二维数组,将一个二维数组按照apname的 键值来排序组合成一个新的二维数组  apname 键值不变,其中其他几个红色划线部分进行组合。

构建好之后展现效果如下

使用了两种方式进行构建

方法一、

function array_chaifen($countnum,$name){$lists = array_column($countnum, $name);
$lists = array_flip(array_flip($lists));
foreach ($lists as $k1=>$v1){$m = [];foreach ($countnum as $k2=>$v2){if($v2[$name] === $v1){$m = array_merge($m,$v2);}}$lists[$k1] = $m;
}return $lists;}

方法二、

$result = [];
foreach ($countnum as $key => $value) {$name = $value['apname'];$isLoad = false;$loadKey = false;foreach ($result as $k => $v) {if($v['apname'] == $value['apname']){$isLoad = true;$loadKey = $k;}}@$keyTemp = end(array_keys($value));if ($isLoad) {$result[$k][$keyTemp] = end($value);}else{array_push($result, array('apname'=>$value['apname'],$keyTemp=>end($value)));}
}

估计也没有几个人会有我这种奇怪的需求吧,不过玩玩还是可以的 魔幻二维数组

PHP将一个二维数组按照某个键的键值做出重组一个新的二维数组相关推荐

  1. php 二维数组根据键值合并二维数组_php数组根据某键值,把相同键值的合并最终生成一个新的二维数组...

    匿名用户 1级 2013-12-29 回答 php数组根据某一个键值,把相同键值的合并生成一个新的二维数组 源数据: $infos = array( array( 'a' => 36, 'b' ...

  2. php-使用函数array_walk_recursive处理多维数组的键值后返回一个新数组

    php-使用函数array_walk_recursive处理多维数组的键值后返回一个新数组 $result = array(); //$content是一个多维数组 $walk = array_wal ...

  3. JSX列表渲染(五)——4种写法:基本写法 遍历写法 map遍历写法(常用-加工处理数组的每一项数据,最后形成一个新的数组) 列表遍历可以直接写到表达式中

    JSX列表渲染--4种写法:基本写法 & 遍历写法 & map遍历写法(常用-加工处理数组的每一项数据,最后形成一个新的数组) & 列表遍历可以直接写到表达式中 渲染多个元素 ...

  4. 数组[Java](除去一个数组中的某个值并生成一个新数组)

    ** 数组 **[Java](除去一个数组中的某个值并生成一个新数组) 例如:现在有如下的一个数组: int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5} ; ...

  5. 将一个数组中重复的元素去除,并且返回一个新数组

    public static void main(String[] args) {// 声明一个数组int[] arr = {1, 7, 7, 4, 5, 1, 1, 3, 3, 6, 9};// 打印 ...

  6. 截取数组对应的长度值(形成一个新的数组)

    chunk(array, size) {//获取数组的长度,如果你传入的不是数组,那么获取到的就是undefinedconst length = array.length//判断不是数组,或者size ...

  7. php数组操作之合并相同键名的值,排序,排重,去空值等

    一.前言 数组操作是咱们在编程时候经常遇到的,只是数组函数有点多,用到的时候难免会想不起来.特别是针对多维数组的操作,有的时候用自带的数组函数真的很方便,可以避免多次的foreach循环,这里记录一下 ...

  8. php向数组前加如指定键的值,PHP array_fill_keys():使用指定的键和值来填充数组

    PHP array_fill_keys() 函数使用指定的键和值来填充出一个新数组,其语法如下: array array_fill_keys ( array $keys , mixed $value ...

  9. MySql数据库主键外键与数据库设计

    MySql数据库主键外键与数据库设计 首先要指出的: 列.字段.属性是一个概念 行.记录.元组是一个概念 MySQL数据库CONSTRAINT约束:非空约束,唯一约束,主键约束,外键约束 show c ...

最新文章

  1. Smarty中文手册,Smarty教程,Smarty模板的入门教材
  2. poj 1873 枚举+凸包
  3. java解析ajax的数据_java ajax 请求后获取 json 数据 以及 使用 解析 ,解惑
  4. dump的文件 查看pg_【PG备份恢复】pg_dump命令测试
  5. 暖心!阿里安全白帽挖漏洞做公益 连收2462封山区小孩感谢信
  6. 深入浅出Go Runtime
  7. 关于饿了么ui框架的使用之Form 表单的应用
  8. 关于数字雨特效的学习
  9. 中芯国际的喜与忧:扣非后盈利后将脱帽,管理层分歧、有进有退
  10. SpringBoot整合JPA(六)
  11. python中关于时间和日期函数的常用计算总结
  12. android 获取视频码率和缓存大小,android - 使用MediaCodec和MediaMuxer录制视频,但比特率和帧率不正确 - 堆栈内存溢出...
  13. mysql 未找到 WinSxS_window_win7系统如何使用WinSxS工具安全删除WinSxS文件夹垃圾?,WinSxS文件: WinSxS是系统文件Wi - phpStudy...
  14. 基于密度峰值的聚类(DPCA)
  15. 您的滴滴2020年度出行报告,请查收!
  16. live555直播startplaying
  17. Unix/Linux编程:多协议服务器(TCP/UDP)-----DAYTIME
  18. 强化学习理论基础(MDP、值函数与贝尔曼公式以及表格式Agent)
  19. Visual Studio SVN创建分支 合并分支 切换分支 vs 插件 visualsvn
  20. 解决vscode c++ 无法跳转代码(区别于大部分网上的解决方案)

热门文章

  1. Domino管理端 - 日常命令
  2. viewerjs 在html打开图片或打开pdf文件使用案例
  3. 由浅入深玩转华为WLAN—10安全认证配置(3)无线dot1 PEAP认证,基于微软IAS服务器
  4. macOS conda 安装指定版本的 Pytorch
  5. JavaScript 中创建对象的方法(读书笔记思维导图)
  6. java apdu读取社保卡_使用javax.smartcardio的用于智能卡的ISO 7816 APDU
  7. 设计灵感:12个App的登录注册界面案例参考
  8. vscode 注释多行代码_如何在Visual Studio Code中注释多行?
  9. 美国加州大学数据安全保护措施TOP10借鉴与启发
  10. 全基因组测序数据分析---WGS主流程