这个例子比较全面的比较了PHP合并两个数组常见的方法array_merge和+的区别:
$array1 = array( 'test1' => 'test1', 'test2' => 'test2', 8 => '9', '10' => '1010', 's10' => 's10', ); $array2 = array( 'test1' => 'test1+', 'test2' => 'test2+', '++' => '++', 8 => '9999', '10' => '10101010', 's10' => 's10101010', ); $result = array_merge($array1,$array2); $result2 = $array1+$array2; var_dump($result); var_dump($result2); exit;
结果:
array (size=8) 'test1' => string 'test1+' (length=6) 'test2' => string 'test2+' (length=6) 0 => string '9' (length=1) 1 => string '1010' (length=4) 's10' => string 's10101010' (length=9) '++' => string '++' (length=2) 2 => string '9999' (length=4) 3 => string '10101010' (length=8) array (size=6) 'test1' => string 'test1' (length=5) 'test2' => string 'test2' (length=5) 8 => string '9' (length=1) 10 => string '1010' (length=4) 's10' => string 's10' (length=3) '++' => string '++' (length=2)
其实大多数时候合并数组,都会用array_merge,毕竟相同的键,一般情况都以后面的为准。注意array_merge合并数组,如果两个键相同并且是数字,无论是整形还是字符串数字,都会重新从0开始作为键。