PHP中数组合并的两种方法及区别介绍

Posted ⬆️小马哥⬆️

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP中数组合并的两种方法及区别介绍相关的知识,希望对你有一定的参考价值。

php数组合并两种方法及区别
如果是关联数组,如下:

复制代码 代码如下:

$a = array(
‘where‘ => ‘uid=1‘,
‘order‘ => ‘uid‘,
);
$b = array(
‘where‘ => ‘uid=2‘,
‘order‘ => ‘uid desc‘,
);



1. array_merge,如果两个数组存在相同的key,后面的一个会覆盖前面的

复制代码 代码如下:

<?php
$c = array_merge($a, $b);
var_export($c);//结果与原来的$b相同
$d = array_merge($b, $a);
var_export($d);//结果与原来的$a相同


2. "+"操作符,如果两个数组存在相同的key,前面的一个会覆盖后面的

复制代码 代码如下:

<?php
$c = $a + $b;
var_export($c);//结果与原来的$a相同
$d = $b + $a;
var_export($d);//结果与原来的$b相同



如果是数字索引数组,如下:

复制代码 代码如下:

$a = array(
1 => ‘1111111‘,
2 => ‘222222222‘
);
$b = array(
4 => ‘33333333333‘,
1 => ‘444444444‘
);


1. array_merge. 效果类似代码foreach每个数组元素,然后将每个元素压入一个新堆栈当中

复制代码 代码如下:

<?php
$c = array_merge($a, $b);
var_export($c);
$d = array_merge($b, $a);
var_export($d);


输出:
array (
0 => ‘1111111‘,
1 => ‘222222222‘,
2 => ‘33333333333‘,
3 => ‘444444444‘,
)
array (
0 => ‘33333333333‘,
1 => ‘444444444‘,
2 => ‘1111111‘,
3 => ‘222222222‘,
)
2. "+"操作符. 效果类似代码foreach每个数组元素,然后将每个元素压入一个新堆栈当中,如果同样的key已经存在则不处理

复制代码 代码如下:

<?php
$c = $a + $b;
var_export($c);
$d = $b + $a;
var_export($d);


输出:
array (
1 => ‘1111111‘,
2 => ‘222222222‘,
4 => ‘33333333333‘,
)
array (
4 => ‘33333333333‘,
1 => ‘444444444‘,
2 => ‘222222222‘,
)

以上是关于PHP中数组合并的两种方法及区别介绍的主要内容,如果未能解决你的问题,请参考以下文章

合并两个数组的两种方式的异同

数组:合并数组的两种方式

PHP删除数组中特定元素的两种方法

使用express创建node服务器的两种方法及区别

php如何防止图片盗用/盗链的两种方法

PHP分割两个数组的相同元素和不同元素的两种方法