mafeng

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\',
)

分类:

技术点:

相关文章:

  • 2021-11-05
  • 2022-12-23
  • 2022-12-23
  • 2021-12-26
  • 2021-11-19
  • 2021-11-19
猜你喜欢
  • 2022-01-26
  • 2022-12-23
  • 2022-01-13
  • 2021-09-11
  • 2021-05-11
相关资源
相似解决方案