php多维数组合并_php合并多维数组,递归合并
php有array_merge合并数组功能,但是有个问题,这个函数只合并一维数组,如果有多维数组,则后面的会覆盖前面数组中的子节点,因此写啦另一个深度合并的函数来合并子节点的元素/**
* 深度合并数组
* @DateTime 2020-01-11
* @Author mokuyu
*
* @param [type] $arrs [description]
* @return [type]
*/
function array_merge_deep(...$arrs)
{
$merged = [];
while ($arrs) {
$array = array_shift($arrs);
if (!$array) {continue;}
foreach ($array as $key => $value) {
if (is_string($key)) {
if (is_array($value) && array_key_exists($key, $merged)
&& is_array($merged[$key])) {
$merged[$key] = array_merge_deep(...[$merged[$key], $value]);
} else {
$merged[$key] = $value;
}
} else {
$merged[] = $value;
}
}
}
return $merged;
}
$arr1 = [
'oss' => [
'access_key_id' => 'asdfasdfsdf',
'app_secket' => '',
],
];
$arr2 = [
'oss' => [
'on' => true,
'domain' => 'www.res.com',
],
];
var_dump(array_merge($arr1, $arr2));
var_dump(array_merge_deep($arr1, $arr2));
输出结果如下
php多维数组合并_php合并多维数组,递归合并相关推荐
- php数组分开_PHP学习之五:数组(三)合并、拆分、接合和分解数组
一.合并.拆分.接合和分解数组 1.合并数组 array_merge() 函数将数组合并在一起,返回一个新数组. $a = array("a","b",&quo ...
- php二维码数组处理_php处理二维数组(去除重复项,排序,转换,去空白等)
1. PHP二维数组去重复项函数 PHP数组去除重复项 有个内置函数array_unique (),但是php的 array_unique函数只适用于一维数组,对多维数组并不适用,以下提供一个二维数组 ...
- php怎么比较数组长度_PHP中如何获取数组的长度
编程中数组的使用频率是非常高的,其它判断一个数据是否为空,我们通常都会判断数组的长度.这篇文章就说说在PHP编程语言中如果获取一个数组的长度. PHP count()函数 count():函数返回数组 ...
- php 取数组数量_PHP array_slice():截取数组的一部分
PHP array_slice() 函数用来截取数组,也就是从数组中提取出一个片段,语法如下: array array_slice ( array $arr , int $start [, int $ ...
- python数组截取_PHP array_slice():截取数组的一部分
PHP array_slice() 函数用来截取数组,也就是从数组中提取出一个片段,语法如下: array array_slice ( array $arr , int $start [, int $ ...
- php 二维数组字段合并,PHP将二维数组某一个字段相同的数组合并起来的方法,二维数组数组_PHP教程...
PHP将二维数组某一个字段相同的数组合并起来的方法,二维数组数组 本文实例讲述了PHP将二维数组某一个字段相同的数组合并起来的方法.分享给大家供大家参考,具体如下: 例子: array(3) { [0 ...
- php 二维数组根据键值合并二维数组_php数组实现根据某个键值将相同键值合并生成新二维数组的方法详解...
这篇文章主要介绍了php数组实现根据某个键值将相同键值合并生成新二维数组的方法,涉及php数组的遍历.赋值相关运算技巧,需要的朋友可以参考下 本文实例讲述了php数组实现根据某个键值将相同键值合并生成 ...
- php 判断键值重复合并,php数组实现根据某个键值将相同键值合并生成新二维数组的方法...
本文实例讲述了php数组实现根据某个键值将相同键值合并生成新二维数组的方法.分享给大家供大家参考,具体如下: 源数据: $infos = array( array( a => 36, b =&g ...
- php 二维数组 去重复,php二维数组合并及去重复的方法
这篇文章主要介绍了php二维数组合并及去重复的方法,实例分析了php合并数组与删除重复项的技巧,需要的朋友可以参考下 本文实例讲述了php二维数组合并及去重复的方法.分享给大家供大家参考.具体实现方法 ...
最新文章
- 深度揭秘垃圾回收底层,这次让你彻底弄懂她
- 前端跨域问题的几种解决方案
- python绘制曲线图-python绘制多个曲线的折线图
- JNI与底层调用-2
- 【译】Federated Learning: Bringing Machine Learning to the edge with Kotlin and Android
- 前端学习(2312):react之路由基础
- LeetCode 1861. 旋转盒子(前缀和)
- [蓝桥杯][2019年第十届真题c/c++B组]后缀表达式(解释sum -= 2*a[i])
- latex 生成中文目录乱码问题解决
- C/C++ list链表的理解以及使用
- vscode推荐编程字体
- 【测试】一步步教你写一份优秀的软件测试简历
- 在windows下制作grub2引导的多启动U盘(可启动wepe,安装centos7,debian10等)
- 百度网盘直链原理解析
- 痞子衡嵌入式:ARM Cortex-M内核那些事(3.2)- 安全模块看特性(M23/33/35P)
- (附源码)springboot社区疫情防控管理系统 毕业设计 164621
- 唯库拼课课程大合集更新111门
- 运行django项目报错Couldn‘t import Django
- 数据挖掘 | 判别分析 +朴素贝叶斯分类算法
- 见证一张CAD图如何蜕变成一个高大上的三维地形模型(一)