array_replace

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

array_replaceSustituye los elementos de un array por los de otros arrays

Descripción

array_replace(array $array, array ...$replacements): array

array_replace() crea un nuevo array y asigna elementos para cada clave en cada uno de los arrays proporcionados. Si una clave aparece en varios arrays de entrada, se utilizará el valor del array de entrada más a la derecha.

array_replace() no trata los elementos de manera recursiva, sustituye el valor entero para cada clave cuando realiza una sustitución.

Parámetros

array

El array en el que se sustituyen los elementos.

replacements

Arrays desde los cuales se extraerán los elementos. Los valores de los arrays futuros sobrescribirán los valores anteriores.

Valores devueltos

Devuelve un array.

Ejemplos

Ejemplo #1 Ejemplo con array_replace()

<?php
$base
= array("orange", "banana", "apple", "raspberry");
$replacements = array(0 => "pineapple", 4 => "cherry");
$replacements2 = array(0 => "grape");

$basket = array_replace($base, $replacements, $replacements2);
var_dump($basket);
?>

El resultado del ejemplo sería:

array(5) {
  [0]=>
  string(5) "grape"
  [1]=>
  string(6) "banana"
  [2]=>
  string(5) "apple"
  [3]=>
  string(9) "raspberry"
  [4]=>
  string(6) "cherry"
}

Ejemplo #2 Ejemplo de cómo se manejan los arrays anidados

<?php
$base
= [ 'citrus' => [ 'orange', 'lemon' ], 'pome' => [ 'apple' ] ];
$replacements = [ 'citrus' => [ 'grapefruit' ] ];
$replacements2 = [ 'citrus' => [ 'kumquat', 'citron' ], 'pome' => [ 'loquat' ] ];

$basket = array_replace($base, $replacements, $replacements2);
var_dump($basket);
?>

El resultado del ejemplo sería:

array(2) {
  ["citrus"]=>
  array(2) {
    [0]=>
    string(7) "kumquat"
    [1]=>
    string(6) "citron"
  }
  ["pome"]=>
  array(1) {
    [0]=>
    string(6) "loquat"
  }
}

Ver también