php合并数组的几种方式
来源:互联网 发布:追星 知乎 编辑:程序博客网 时间:2024/06/05 08:38
+号方式
介绍
规则:当两个数组的键名是数字键名或者字符串键名可以直接 +,$c = $a + $b,在$a后追加($b在$a中不存在的键名)键名和值。注意:不覆盖,只是追加不存在的键名和对应的值。键名不重新索引。无论是全部数字键名还是混合,都只是追加键名和值,如果键名相同则不进行追加,即把最先出现的值作为最终结果返回。
代码
array_merge
说明
规则:array_merge() 将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。 如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。 如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。
代码
说明
array_merge_recursive() 将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。 如果输入的数组中有相同的字符串键名,则这些值会被合并到一个数组中去,这将递归下去,因此如果一个值本身是一个数组,本函数将按照相应的条目把它合并为另一个数组。然而,如果数组具有相同的数组键名,后一个值将不会覆盖原来的值,而是附加到后面。 注意:规则跟array_merge基本相同,只是在处理相同字符键名的时候,采用递归追加。
总结
对比array_merge和+以及array_merge_recursive结果的”color”的值我们可以看出:1.对于相同的字符串索引,array_merge则会用后面的值覆盖前面出现的值;+会用前面出现过的值覆盖后面相同的key;array_merge_recursive则会把相同的索引放到一个数组里面,增加数组的维度;2.对于相同的数字索引,array_merge则会给重复的值重建索引(索引值从0开始);+仍然是用前面出现过的值覆盖后面的值;array_merge_recursive和array_merge的处理方法一样。但是这只是把数组进行合并,我做合并的同时还想要去重应该怎么办呢,那就用到了另外两个函数array_flip()函数和array_keys() 函数
迭代器
参考我写的php-spl迭代器中的数组组合。
阅读全文
0 0
- php合并数组的几种方式
- PHP合并数组的几种方法
- php合并数组的两种方式
- PHP合并两个数组的两种方式的异同
- PHP二维数组合并的两种不同方式
- php中遍历二维数组的几种方式
- php 遍历二维数组的几种方式
- php中删除数组元素的几种方式
- php中遍历二维数组的几种方式
- php中遍历二维数组的几种方式
- php中遍历二维数组的几种方式
- PHP数组几种常见的排序方式
- PHP-遍历二维数组的几种方式
- php中遍历二维数组的几种方式
- Map 合并的几种方式
- php数组的合并
- PHP中2种方法快速地合并数组,你知道吗?合并两个数组有几种方式,试比较它们的异同
- PHP重置数组为连续数字索引的几种方式
- Android读书笔记(九)滑动菜单DrawerLayout、悬浮按钮、可交互提示
- JavaScript 里 var a =a ||{} 啥意思?
- JAVA输出XML文件形式
- unity 《专题系列》资源打包 Asset Bundles 第六节 Asset Bundles Browser tool
- TimeQuest约束外设之诡异的Create Generated Clocks用法
- php合并数组的几种方式
- 11月13日笔记
- 策略模式
- inf
- PAT (Basic Level) Practise (中文)1057. 数零壹(20)
- 如何求素数(重点为筛选法)
- 如何写一个RPC框架(五):服务器端实现
- HDU 1201 18岁生日
- 【NOIP2017】滚粗记