array_merge

(PHP 4, PHP 5)

array_merge -- 合併一個或多個陣列

說明

array array_merge ( array array1 [, array array2 [, array ...]] )

array_merge() 將一個或多個陣列的單元合併起來,一個陣列中的值附加在前一個陣列的後面。返回作為結果的陣列。

若果輸入的陣列中有相同的字串鍵名,則該鍵名後面的值將覆蓋前一個值。然而,若果陣列包括數字鍵名,後面的值將不會覆蓋原來的值,而是附加到後面。

若果只給了一個陣列並且該陣列是數字索引的,則鍵名會以連續模式重新索引。

例子 1. array_merge() 例子

<?php
$array1 
= array("color" => "red"24);
$array2 = array("a""b""color" => "green""shape" => "trapezoid"4);
$result array_merge($array1$array2);
print_r($result);
?>

上例將輸出:

Array
(
    [color] => green
    [0] => 2
    [1] => 4
    [2] => a
    [3] => b
    [shape] => trapezoid
    [4] => 4
)

例子 2. 簡單的 array_merge() 例子

<?php
$array1 
= array();
$array2 = array(=> "data");
$result array_merge($array1$array2);
?>

別忘了數字鍵名將會被重新編號!

Array
(
    [0] => data
)

若果你想完全保留原有陣列並只想新的陣列附加到後面,用 + 運算符:

<?php
$array1 
= array();
$array2 = array(=> "data");
$result $array1 $array2;
?>

數字鍵名將被保留從而原來的關聯保持不變。

Array
(
    [1] => data
)

警示

array_merge() 的行為在 PHP 5 中被修改了。和 PHP 4 不同,array_merge() 現在只接受 array 類型的參數。不過可以用強制轉換來合併其它類型。請看下面的例子。

例子 3. array_merge() PHP 5 例子

<?php
$beginning 
'foo';
$end = array(=> 'bar');
$result array_merge((array)$beginning, (array)$end);
print_r($result);
?>

上例將輸出:

Array
(
    [0] => foo
    [1] => bar
)

參見 array_merge_recursive()array_combine()陣列運算符