PHP多个数组合并(递归的进行)
来源:互联网 发布:销售软件手机版 编辑:程序博客网 时间:2024/06/03 19:44
<?php/** * 对多个数组进行递归合并 返回新的数组 * 如果多个数组中有相同的键则会覆盖 * * @return type Array */function multimerge(){ $arrs = func_get_args(); $merged = array(); 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] = call_user_func_array('multimerge', array($merged[$key], $value)); } else { $merged[$key] = $value; } } else { $merged[] = $value; } } } return $merged;}$a = array('username'=>'zhangsan','age'=>200);$b = array(5,8,9,array(1,2,3,array(7,10)));$c = array('username'=>'lisi',100,'user'=>array('sex'=>1,'age'=>20));$d = array('user' => array('sex'=>0));$e = multimerge($a,$b,$c,$d);var_dump($e);
以上代码输出如下
说明:
这是一个比较好用的PHP数组合并函数!可以对数组进行理想中的合并效果!任意维度
常用的使用场景,如配置文件合并!多个数据源转换为PHP数组后的合并处理等
更多用途!只有你自己发掘了!
0 0
- PHP多个数组合并(递归的进行)
- php中多个数组合并为一个数组
- PHP 对多个数组合并去重&以及数组键值的翻转
- 使用简单的JS代码让多个数组合并
- 如何优雅的将多个数组合并成一个数组(去重)
- php 组合算法(从n个数中取出m个元素进行组合,不考虑排序和元素重复)
- 1~19这19个数字,任意多个数相加等于20的所有组合,不重复(递归)
- 从n个自然数中任取r个数的所有组合(递归算法)
- 从n个自然数中任取r个数的所有组合(递归算法)
- PHP字符串组合递归
- 多个数组合并为一个数组的方法与性能
- php两种数组合并的区别
- 递归实现 从n个数中选取m个数的所有组合
- C++ python STL 组合数递归算法(n个取m个数的组合数)
- js2个数组合并并去重
- 第十三周-求出并输出Fibnacci序列的第20个数(递归方式)
- PHP随机生成随机个数的字母组合
- m个数取n个进行组合
- 二叉树的非递归遍历
- UUID---生成--测试
- 分解和合并:Java 也擅长轻松的并行编程!
- 访问修饰符的控制级别
- ActionContext和ServletActionContext小结
- PHP多个数组合并(递归的进行)
- SQL HAVING 子句
- shiro(三)_授权
- 监听MAC OS的鼠标全局事件
- Python 正则表达式提取URL中的USER
- 如何搭建自己CDN服务器
- 大数据计算新贵Spark在腾讯雅虎优酷成功应用解析
- iOS基本控件-UIWindow 级别 UIWindowLevel
- 编译出现"undefined reference to `GTK_WIDGET_REALIZED',`GTK_WIDGET_VISIBLE' "相关错误的解决方法