Manual do PHP
Anterior |  | Próxima

# array_merge

(PHP 4, PHP 5)

array_merge -- Funde um ou mais arrays

## Descrição

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

array_merge() funde os elementos dois ou mais arrays de forma que os elementos de um são colocados no final do array anterior. Retorna o array resultante da fusão.

Se os arrays dados têm as mesmas chaves string, então o último valor para uma chave irá sobrescrever o valor anterior. Se, no entanto, os arrays tem as mesmas chaves numéricas, o último valor para uma chave não sobrescreverá o valor original, e sim adicionado ao array resultante.

Se apenas uma array é dada e a array é indexada numericamente, as chaves são reindexadas de uma maneira continua.

Exemplo 1. Exemplo de array_merge()
`<?php $array1 = array("cor" => "vermelho", 2, 4); $array2 = array("a", "b", "cor" => "verde", "forma" => "trapezoide", 4); $result = array_merge($array1, $array2); print_r($result); ?>`
O exemplo acima irá imprimir:
`Array ( [cor] => verde [0] => 2 [1] => 4 [2] => a [3] => b [forma] => trapezoide [4] => 4 )`

Exemplo 2. Exemplo simples de array_merge()
`<?php $array1 = array(); $array2 = array(1 => "data"); $result = array_merge($array1, $array2); ?>`
Não esqueça que as chaves numéricas serão reordenadas!
`Array ( [0] => data )`
Se você quer preservar os arrays e apenas concatená-los, o operador `+`:
`<?php $array1 = array(); $array2 = array(1 => "data"); $result = $array1 + $array2; ?>`
As chaves numéricas serão preservadas e as associações originais permanecem.
`Array ( [1] => data )`

Atenção
O funcionamento de array_merge() foi modificado no PHP 5. Diferentemente do PHP 4, array_merge() agora aceita parâmetros do tipo array. Entretanto, você pode mudar o tipo para fundir outros tipos. Veja o exemplo abaixo para detalhes.
Exemplo 3. Exemplo de array_merge() no PHP 5
`<?php $beginning = 'foo'; $end = array(1 => 'bar'); $result = array_merge((array)$beginning, (array)$end); print_r($result); ?>`
O exemplo acima irá imprimir:
`Array ( [0] => foo [1] => bar )`

Veja também array_merge_recursive() e array_combine().

Anterior | Principal | Próxima
array_merge_recursive | Acima | array_multisort