如何将2个数组合并到$array3
$array1 = array('first', 'second');
$array2 = array('third', 'fourth');
$array3 = array('first', 'second', 'third', 'fourth');
我找到的所有函数都添加了键,将其转换为关联数组[0] =>'first'。我不想要这个。我希望它保持为只有字符串的数组。
答案 0 :(得分:3)
Array do 总是有一个索引/键,但在使用array()
language constructor时可以省略它们:
如果没有为某个值指定一个键,则取整数索引的最大值,新键将是该值加1.
因此array('first', 'second', 'third', 'fourth')
与array(0 => 'first', 1 => 'second', 2 => 'third', 3 => 'fourth')
相同:
$a = array('first', 'second', 'third', 'fourth');
$b = array(0 => 'first', 1 => 'second', 2 => 'third', 3 => 'fourth');
var_dump($a === $b); // bool(true)
var_dump(var_export($a, true) === var_export($b, true)); // bool(true)
所以只需使用array_merge
:
$array3 = array_merge($array1, $array2);
答案 1 :(得分:2)
$array3 = array_merge($array1, $array2);
Doc:http://php.net/array_merge
[0],[1]等键是数组的默认键 - 每个数组都有它们。
答案 2 :(得分:1)
您的元素始终具有键。试试这个:
print_r( $array1 );
你会看到[0] => “第一”
用于合并的函数不是问题 - 键简单总是存在。 Probaly你正在寻找解决方案的方法 - 不要搜索如何摆脱索引,但尝试重写你的解决方案,其中索引没有任何意义。