array_mergeFonde uno o più arrayDescrizionearrayarray_mergearrayarray1arrayarray2array...array_merge fonde gli elementi di uno o
più array in modo che i valori di un array siano accodati
a quelli dell'array precedente. Restituisce l'array risultante.
Se gli array in input hanno le stesse chiavi stringa, l'ultimo
valore di quella chiave sovrascriverà i precedenti. Comunque, se gli array
hanno le stesse chiavi numeriche, l'ultimo valore non sovrascriverà quello originale, bensì sarà
accodato.
Se viene fornito un solo array, e questo è indicizzato numericamente, le
chiavi vengono reindicizzate in una sequenza continua. Nel caso di array associativi, delle
chiavi duplicate rimane solo l'ultima. Vedere l'esempio tre per ulteriori dettagli.
Esempio di array_merge
"rosso", 2, 4);
$array2 = array("a", "b", "colore" => "verde", "forma" => "trapezio", 4);
$risultato = array_merge($array1, $array2);
print_r($risultato);
?>
]]>
La variabile $risultato sarà:
verde
[0] => 2
[1] => 4
[2] => a
[3] => b
[forma] => trapezio
[4] => 4
)
]]>
Esempio di array_merge
"dati");
$result = array_merge($array1, $array2);
?>
]]>
Non dimenticarsi che le chiavi numeriche saranno rinumerate!
data
)
]]>
Se si vogliono preservare gli array e li si vuole solo
concatenare, usare l'operatore +:
"dati");
$result = $array1 + $array2;
?>
]]>
La chiave numerica sarà preservata e così pure l'associazione.
data
)
]]>
esempio di array_merge
"mario", 1 => "roberto", 2 => "andrea", 3 => "dante");
$array_due = array("mario => "roberto", "andrea" => "dante", "mario" => "giacomo");
unset($array_uno[2]);
$risultato_uno = array_merge($array_uno);
$risultato_due = array_merge($array_due);
print_r($risultato_uno);
print_r($risultato_due);
?>
]]>
Il risultato sarà:
mario
[1] => roberto
[2] => dante
)
Array
(
[mario] => giacomo
[andrea] => dante
)
]]>
Le chiavi condivise verranno sovrascritte dalla prima chiave processata.
Vedere anche array_merge_recursive e
array_combine e
operatori sugli array.