[PHP] array_replace_recursive()

array_replace_recursive() (funzione PHP) sostituisce, in modo ricorsivo, gli elementi di un array con gli elementi di uno o più array che abbiano gli stessi indici.

tips&tricks

Regole della sostituzione: 1) se una chiave del primo array esiste nel secondo array, il suo valore verrà sostituito dal valore del secondo array; 2) se la chiave esiste nel secondo array e non nel primo, verrà creata nel primo array; 3) e una chiave esiste solo nel primo array, verrà lasciata così com’è; 4) se vengono indicati più array per la sostituzione, verranno elaborati in ordine, gli array successivi sovrascrivono i valori precedenti.

La differenza tra array_replace() e array_replace_recursive() consiste nel fatto che il secondo è recursive cioè opera anche nei sub-array degli array multidimensionali (cfr. questo articolo)

Sintassi

array_replace_recursive($array1, $array2, $array3[facoltativo], ...)
parametro descrizione
$array1 L’array in cui gli elementi vengono sostituiti
$array2 L’array da cui sono estratti gli elementi
$array3 L’array da cui sono estratti ulteriori elementi (sovrascrivono i valori precedenti)

Esempi

$base = array("arancia", "banana", "mela", "lampone");
$replacements = array(0 => "ananas", 4 => "ciliegia");
$replacements2 = array(0 => "uva");

$basket = array_replace_recursive($base, $replacements, $replacements2);
print_r($basket);

/* RISULTATO
Array
(
    [0] => uva
    [1] => banana
    [2] => mela
    [3] => lampone
    [4] => ciliegia
)
*/

Contenuti correlati

Fonti esterne

funzioni php, php

Related Articles

0 Comment