Maison  >  Article  >  développement back-end  >  PHP remplace récursivement la valeur du premier tableau par la valeur de la fonction de tableau suivante array_replace_recursive()

PHP remplace récursivement la valeur du premier tableau par la valeur de la fonction de tableau suivante array_replace_recursive()

黄舟
黄舟original
2017-11-08 13:39:581460parcourir

Instance

Récursivement remplace la valeur du premier tableau ($a1) par la valeur du deuxième tableau ($a2) :

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));
print_r(array_replace_recursive($a1,$a2));
?>

Définition et utilisation

La fonction array_replace_recursive() remplace récursivement la valeur du premier tableau par la valeur du tableau suivant.

Astuce : Vous pouvez transmettre un ou plusieurs tableaux à la fonction.

Si une clé existe dans le premier tableau array1 et existe également dans le deuxième tableau array2, la valeur du premier tableau array1 sera remplacée par la valeur du deuxième tableau array2. Si une clé n'existe que dans le premier tableau array1, elle restera inchangée. Si une clé existe dans le deuxième tableau, tableau2, mais pas dans le premier tableau, tableau1, l'élément sera créé dans le premier tableau, tableau1. Si plusieurs tableaux de remplacement sont transmis, ils seront traités dans l'ordre et les valeurs des tableaux suivants écraseront les valeurs des tableaux précédents.

Remarque : Si une clé n'est pas spécifiée pour chaque tableau, le comportement de cette fonction sera équivalent à la fonction array_replace().

Syntaxe

array_replace_recursive(array1,array2,array3...)
参数 描述
array1 必需。指定一个数组。
array2 可选。指定一个要替换 array1 的值的数组。
array3,... 可选。指定多个要替换 array1 和 array2, ... 的值的数组。后面数组的值将覆盖之前数组的值。

Détails techniques

返回值: 返回被替换的数组,如果发生错误则返回 NULL。
PHP 版本: 5.3.0+

更多实例

实例 1

多个数组:

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"));
$a2=array("a"=>array("yellow"),"b"=>array("black"));
$a3=array("a"=>array("orange"),"b"=>array("burgundy"));
print_r(array_replace_recursive($a1,$a2,$a3));
?>

实例 2

array_replace() 与 array_replace_recursive() 之间的不同:

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));

$result=array_replace_recursive($a1,$a2);
print_r($result);

$result=array_replace($a1,$a2);
print_r($result);
?>


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn