你这不就是把两个一维数组放到二维数组里面去吗?
专注于为中小企业提供成都网站设计、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业永修免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
把两个一维数组 外面再套一层 [ ] 后去array_merge。
举个例子:
$arr1 = ['id' = 1, 'value' = 'a'];
$arr2 = ['id' = 2, 'value' = 'b'];
$arr3 = ['id' = 3, 'value' = 'c'];
$result = [];//结果变量
for($i=1;$i=3;$i++) {
$result = array_merge($result , [${'arr'.$i}]);
}
$result就是合并后的二维数组
1.合并数组
array_merge()函数将数组合并到一起,返回一个联合的数组。所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次迫加。其形式为:
复制代码
代码如下:
array
array_merge
(array
array1
array2…,arrayN)
将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。
如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。
如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。
实例如下:
复制代码
代码如下:
$face
=
array("J","Q","K","A");
$numbered
=
array("2","3","4","5","6","7","8","9");
$cards
=
array_merge($face,
$numbered);
shuffle($cards);
print_r($cards);
这将返回如下所示的结果,运行代码:
复制代码
代码如下:
Array
(
[0]
=
A
[1]
=
4
[2]
=
9
[3]
=
3
[4]
=
K
[5]
=
7
[6]
=
5
[7]
=
Q
[8]
=
6
[9]
=
8
[10]
=
2
[11]
=
J
)
2.递归追加数组
array_merge_recursive()函数与array_merge()相同,可以将两个或多个数组合并在一起,形成一个联合的数组.两者之间的区别在于,当某个输入数组中的某个键己经存在于结果数组中时该函数会采取不同的处理方式.array_merge()会覆盖前面存在的键/值对,替换为当前输入数组中的键/值对,而array_merge_recursive()将把两个值合并在一起,形成一个新的数组,并以原有的键作为数组名。还有一个数组合并的形式,就是递归追加数组。其形式为:
view
sourceprint?array
array_merge_recursive(
array
key,array
values
)
示例如下:
复制代码
代码如下:
$class1
=
array("John"
=
100,
"James"
=
85);
$class2
=
array("Micky"
=
78,
"John"
=
45);
$classScores
=
array_merge_recursive($class1,
$class2);
print_r($classScores);
这将返回如下结果:
view
sourceprint?Array
(
[John]
=
Array
(
[0]
=
100
[1]
=
45
)
[James]
=
85
[Micky]
=
78
)
3.连接两个数组
array_combine()函数会得到一个新数组,它由一组提交的键和对应的值组成。其形式为:
view
sourceprint?array
array_merge(array
array1,array
array2[…,array
arrayN])
注意,两个输入数组必须大小相同,不能为空。示例如下:
复制代码
代码如下:
$abbreviations
=
array("AL","AK","AZ","AR");
$states
=
array("Alabama","Alaska","Arizona","Arkansas");
$stateMap
=
array_combine($abbreviations,$states);
print_r($stateMap);
这会返回:
复制代码
代码如下:
Array
(
[AL]
=
Alabama
[AK]
=
Alaska
[AZ]
=
Arizona
[AR]
=
Arkansas
)
简单的方法是使用函数array_merge(),比如array_merge($arr_one,$arr_two );
或者forech方法
forech($arr_one as $v){
$arr_two[]=$v;
}
执行后数组one的元素全部添加到数组two中了