龙空技术网

PHP数组合并+和array_merge()的区别

自学PHPer 109

前言:

现时姐妹们对“php 数组拼接”可能比较讲究,大家都需要分析一些“php 数组拼接”的相关内容。那么小编同时在网摘上收集了一些关于“php 数组拼接””的相关知识,希望各位老铁们能喜欢,小伙伴们一起来学习一下吧!

答案解析

array_merge():

如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。

+:

如果输入的数组中有相同的字符串键名,把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉。然而,如果数组包含数字键名,+运算会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉(不是覆盖)。

测试代码:

$array1['foo'] = 'Bar1';$array2['foo'] = 'Bar2';print_r($array1 + $array2); // Array ( [foo] => Bar1 )print_r($array2 + $array1); // Array ( [foo] => Bar2 )print_r(array_merge($array1, $array2)); // Array ( [foo] => Bar2 )print_r(array_merge($array2, $array1)); // Array ( [foo] => Bar1 )$array1 = [1, 2, 3];$array2 = [4, 5, 6];print_r($array1 + $array2); // Array ( [0] => 1 [1] => 2 [2] => 3 ) print_r($array2 + $array1); // Array ( [0] => 4 [1] => 5 [2] => 6 )print_r(array_merge($array1, $array2)); // Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) print_r(array_merge($array2, $array1)); // Array ( [0] => 4 [1] => 5 [2] => 6 [3] => 1 [4] => 2 [5] => 3 )

举两个例子,怎么样写好代码

最经典的算法,献给正在面试道路上的你

如果你现在在面试PHP的道路上,看看面试基础题吧

标签: #php 数组拼接