(PHP 5 >= 5.3.0, PHP 7, PHP 8)
array_replace — Substitui elementos de arrays passados no primeiro array
array_replace() cria um novo array e atribui itens a ele para cada chave em cada um dos arrays fornecidos. Se uma chave aparecer em múltiplos arrays de entrada, o valor do array de entrada mais à direita será usado.
array_replace() não processa os itens dos elementos recursivamente, ela substitui o valor inteiro para cada chave quando faz uma substituição.
arrayO array no qual os elementos são substituídos.
replacementsArrays dos quais os elementos serão extraídos. Os valores dos arrays posteriores substituem os valores anteriores.
Retorna um array.
Exemplo #1 Exemplo de array_replace()
<?php
$base = array("laranja", "banana", "maçã", "framboesa");
$substituicoes = array(0 => "abacaxi", 4 => "cereja");
$substituicoes2 = array(0 => "uva");
$cesta = array_replace($base, $substituicoes, $substituicoes2);
var_dump($cesta);
?>O exemplo acima produzirá:
array(5) {
[0]=>
string(3) "uva"
[1]=>
string(6) "banana"
[2]=>
string(4) "maçã"
[3]=>
string(9) "framboesa"
[4]=>
string(6) "cereja"
}
Exemplo #2 Exemplo de como arrays aninhados são manipulados
<?php
$base = [ 'cítricas' => [ 'laranja', 'limão' ], 'pomóideas' => [ 'maçã' ] ];
$replacements = [ 'cítricas' => [ 'toranja' ] ];
$replacements2 = [ 'cítricas' => [ 'kumquat', 'cidra' ], 'pomóideas' => [ 'nêspera' ] ];
$cesta = array_replace($base, $substituicoes, $substituicoes2);
var_dump($cesta);
?>O exemplo acima produzirá:
array(2) {
["cítricas"]=>
array(2) {
[0]=>
string(7) "kumquat"
[1]=>
string(5) "cidra"
}
["pomóideas"]=>
array(1) {
[0]=>
string(7) "nêspera"
}
}