+ 运算符把右边的数组附加到左边的数组后面,但是重复的键值不会被覆盖。
1 2 3 4 5 6 7 8 9 10 11 12 |
<?php $a = array("a" => "apple", "b" => "banana"); $b = array("a" => "pear", "b" => "strawberry", "c" => "cherry"); $c = $a + $b; // Union of $a and $b echo "Union of \$a and \$b: \n"; var_dump($c); $c = $b + $a; // Union of $b and $a echo "Union of \$b and \$a: \n"; var_dump($c); ?> |
执行后,此脚本会显示:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Union of $a and $b: array(3) { ["a"]=> string(5) "apple" ["b"]=> string(6) "banana" ["c"]=> string(6) "cherry" } Union of $b and $a: array(3) { ["a"]=> string(4) "pear" ["b"]=> string(10) "strawberry" ["c"]=> string(6) "cherry" } |
array_merge
array_merge — 合并一个或多个数组
说明
array array_merge ( array array1 [, array array2 [, array …]] )
array_merge() 将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。
如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。
如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。
例子 2. 简单的 array_merge() 例子
别忘了数字键名将会被重新编号!
如果你想完全保留原有数组并只想新的数组附加到后面,用 + 运算符:
数字键名将被保留从而原来的关联保持不变。
|