这是一篇相当老的文章,但我想添加一些关于将一个数组附加到另一个数组的东西:
If
一个或两个数组都有关联键
两个数组的键都不重要
你可以像这样使用数组函数:
array_merge(array_values($array), array_values($appendArray));
array_merge不合并数字键,所以它附加$appendArray的所有值。当使用原生php函数而不是foreach-loop时,它应该在包含大量元素的数组上更快。
除了2019-12-13:
从PHP 7.4开始,就有可能以数组展开操作符的方式追加或前置数组:
$a = [3, 4];
$b = [1, 2, ...$a];
和以前一样,这个新功能的键可能是一个问题:
$a = ['a' => 3, 'b' => 4];
$b = ['c' => 1, 'a' => 2, ...$a];
"致命错误:未捕获错误:无法解包包含字符串键的数组"
$a = [3 => 3, 4 => 4];
$b = [1 => 1, 4 => 2, ...$a];
阵列(4){
[1] = >
int (1)
[4] = >
int (2)
[5] = >
int (3)
[6] = >
int (4)
}
$a = [1 => 1, 2 => 2];
$b = [...$a, 3 => 3, 1 => 4];
数组(3){
[0] = >
int (1)
[1] = >
int (4)
[3] = >
int (3)
}