Maison >développement back-end >Problème PHP >fonction de remplacement de tableau php
Dans le langage de programmation PHP, le tableau est un type de données très courant et pratique. Dans les tableaux, nous pouvons accéder et modifier rapidement les éléments du tableau en fonction des indices. Mais dans la programmation réelle, nous avons souvent besoin de remplacer des éléments dans un tableau. À l'heure actuelle, la fonction de remplacement de tableau intégrée à PHP est très pratique.
Cet article présentera en détail les fonctions de remplacement de tableau en PHP, notamment array_replace(), array_replace_recursive(), array_merge(), array_merge_recursive() et array_combine() et d'autres fonctions.
1. La fonction array_replace()
array_replace() est utilisée pour remplacer les éléments d'un tableau par des éléments d'un autre tableau. S'il y a des clés en double, les valeurs ultérieures écraseront les valeurs précédentes. La syntaxe de cette fonction est la suivante :
array array_replace ( array $array1 , array $array2 [, array $... ] )
Parmi eux, $array1 est le tableau d'origine, $array2 est le tableau à remplacer et $... signifie que plusieurs tableaux peuvent être transmis. Cette fonction renverra un tableau remplacé.
Ce qui suit est un exemple de code :
<?php $array1 = array("a" => "apple", "b" => "banana", "c" => "cherry"); $array2 = array("b" => "blueberry", "c" => "coconut"); $result = array_replace($array1, $array2); print_r($result); ?>
Le résultat de ce code est le suivant :
Array ( [a] => apple [b] => blueberry [c] => coconut )
Comme vous pouvez le voir, les éléments du tableau $array2 ont remplacé les éléments correspondants dans le tableau $array1.
2. array_replace_recursive()
L'utilisation de la fonction array_replace_recursive() est fondamentalement la même que celle de array_replace(), mais elle remplacera de manière récursive les éléments du tableau. La syntaxe de cette fonction est la suivante :
array array_replace_recursive ( array $array1 , array $array2 [, array $... ] )
Contrairement à array_replace(), l'opération de remplacement de cette fonction est effectuée de manière récursive. Par exemple, s'il y a deux tableaux :
$array1 = array("a" => array("b" => "banana", "c" => "cherry")); $array2 = array("a" => array("b" => "blueberry", "d" => "date"));
Si nous utilisons la fonction array_replace(), le résultat est comme ceci :
$result = array_replace($array1, $array2); print_r($result);
Résultat de sortie :
Array ( [a] => Array ( [b] => blueberry [c] => cherry [d] => date ) )
Vous pouvez voir que les éléments de $array2 ont remplacé avec succès les éléments de $array1 , mais l'élément "c" qui appartenait à l'origine à $array1 a été supprimé. En effet, la fonction array_replace() remplace simplement les éléments de $array2 par les éléments de $array1 et ne prend pas en compte le sous-tableau.
Si nous utilisons la fonction array_replace_recursive() pour remplacer ces deux tableaux, le résultat est le suivant :
$result = array_replace_recursive($array1, $array2); print_r($result);
Résultat de sortie :
Array ( [a] => Array ( [b] => blueberry [c] => cherry [d] => date ) )
Comme vous pouvez le voir, l'élément "c" dans $array1 est conservé avec succès, et le L'élément "c" dans $array2 est conservé avec succès. L'élément "d" est également ajouté avec succès au tableau résultat, ce qui signifie que la fonction array_replace_recursive() conserve de manière récursive tous les éléments des deux tableaux.
3. La fonction array_merge()
array_merge() est utilisée pour fusionner plusieurs tableaux dans un nouveau tableau et supprimer les éléments en double. La syntaxe de cette fonction est la suivante :
array array_merge ( array $array1 [, array $... ] )
Parmi eux, $array1 est le premier tableau, et plusieurs tableaux peuvent être transmis. Cette fonction renvoie le nouveau tableau fusionné.
Ce qui suit est un exemple de code :
<?php $array1 = array("a" => "apple", "b" => "banana"); $array2 = array("b" => "blueberry", "c" => "cherry"); $result = array_merge($array1, $array2); print_r($result); ?>
Le résultat de ce code est le suivant :
Array ( [a] => apple [b] => blueberry [c] => cherry )
Comme vous pouvez le voir, cette fonction fusionne les éléments des deux tableaux dans un nouveau tableau et supprime les éléments en double.
4. array_merge_recursive()
L'utilisation de la fonction array_merge_recursive() est similaire à array_merge(), sauf qu'elle fusionnera de manière récursive les éléments du tableau. La syntaxe de cette fonction est la suivante :
array array_merge_recursive ( array $array1 [, array $... ] )
Contrairement à array_merge(), l'opération de fusion de cette fonction est effectuée de manière récursive. Par exemple, s'il y a deux tableaux :
$array1 = array("a" => array("b" => "banana")); $array2 = array("a" => array("c" => "cherry"));
Si nous utilisons la fonction array_merge() pour fusionner les deux tableaux, le résultat est comme ceci :
$result = array_merge($array1, $array2); print_r($result);
Résultat de sortie :
Array ( [a] => Array ( [c] => cherry ) )
Vous pouvez voir que les éléments de $array2 sont fusionnés avec succès dans le tableau de résultats, mais l'élément "b" qui appartenait à l'origine à $array1 a été supprimé. En effet, la fonction array_merge() fusionne simplement les éléments des deux tableaux sans prendre en compte les sous-tableaux.
Si nous utilisons la fonction array_merge_recursive() pour fusionner ces deux tableaux, le résultat est le suivant :
$result = array_merge_recursive($array1, $array2); print_r($result);
Résultat de sortie :
Array ( [a] => Array ( [b] => banana [c] => cherry ) )
Vous pouvez voir que les éléments de $array1 et $array2 sont fusionnés avec succès dans le tableau de résultat . Cela signifie que la fonction array_merge_recursive() fusionne récursivement tous les éléments des deux tableaux.
5. La fonction array_combine()
array_combine() est utilisée pour utiliser le nom de la clé dans un tableau comme valeur dans un autre tableau pour générer un nouveau tableau. La syntaxe de cette fonction est la suivante :
array array_combine ( array $keys , array $values )
Parmi eux, $keys est un tableau contenant des noms de clés, et $values est un tableau contenant des valeurs de clés. Cette fonction renverra un nouveau tableau avec les clés du tableau $keys et les valeurs clés du tableau $values.
Ce qui suit est un exemple de code :
<?php $keys = array("a", "b", "c"); $values = array("apple", "banana", "cherry"); $result = array_combine($keys, $values); print_r($result); ?>
Le résultat de ce code est le suivant :
Array ( [a] => apple [b] => banana [c] => cherry )
Comme vous pouvez le voir, cette fonction associe les éléments des tableaux $keys et $values pour générer un nouveau tableau.
Résumé
Cet article présente les fonctions de remplacement de tableau en PHP, notamment array_replace(), array_replace_recursive(), array_merge(), array_merge_recursive() et array_combine() et d'autres fonctions. Ces fonctions sont très utiles dans la programmation réelle et peuvent nous aider à exploiter et traiter rapidement les tableaux et à améliorer la qualité et l'efficacité du code.
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!