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 esse array resultante.
Se os arrays dados têm as mesmas chaves string, então o último valor para uma chave irá sobrescrever todos os outros. 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.
O array resultante será array("cor" => "verde", 2, 4, "a", "b", "forma" => "trapezoide", 4).
Veja também array_merge_recursive().