Array est une structure de données très utile en PHP. Elle peut stocker un ensemble de données. Nous pouvons accéder aux éléments du tableau via l'index ou la clé du tableau. Dans le processus de développement actuel, nous devons souvent effectuer des opérations de fusion de tableaux pour fusionner des éléments de plusieurs tableaux afin de former un nouveau tableau. Dans cet article, nous apprendrons comment utiliser les fonctions de tableau en PHP pour effectuer des opérations de fusion de tableaux et obtenir la collection de plusieurs tableaux.
1. Les tableaux en PHP
En PHP, les tableaux sont une structure de données très couramment utilisée. Ils peuvent être utilisés pour stocker un ensemble de données du même type. Chaque élément du tableau a une valeur d'index ou une valeur de clé. nous pouvons accéder aux éléments du tableau via ces valeurs.
Voici deux façons de définir des tableaux en PHP :
1. Utilisez la fonction array() pour créer un tableau
$arr = array('a', 'b',
2); . Utilisez le symbole [] pour créer un tableau
$arr = ['a', 'b', 'c'];
En PHP, les tableaux peuvent stocker tout type de données, telles que des chaînes, des entiers, des nombres à virgule flottante. , valeurs booléennes, objets, etc. De plus, PHP fournit également de nombreuses fonctions utiles pour faire fonctionner les tableaux, comme indiqué ci-dessous.
2. Fonctions de fusion de tableaux en PHP
PHP fournit des fonctions très utiles pour traiter des tableaux. La fusion d'éléments dans plusieurs tableaux est une opération très courante. Ce qui suit est une introduction aux fonctions utilisées pour les opérations de fusion de tableaux en PHP :
1.fonction.array_merge()
La fonctionarray_merge() est la fonction la plus courante en PHP qui fusionne deux tableaux ou plus en un seul tableau. . Voici l'utilisation de la fonction array_merge() :
$arr1 = array('a', 'b', 'c');
$arr2 = array('d', 'e', 'f'); );
$ result = array_merge($arr1, $arr2);
Le code ci-dessus fusionnera les deux tableaux $arr1 et $arr2 ensemble et stockera le résultat dans le tableau $result.
Il convient de noter que la fonction array_merge() ne peut gérer que les tableaux d'index, pas les tableaux associatifs. Si vous devez traiter des tableaux associatifs, vous devez utiliser la fonction array_merge_recursive().
2. Fonction array_merge_recursive()
La fonction array_merge_recursive() est similaire à la fonction array_merge() et peut également être utilisée pour fusionner deux ou plusieurs tableaux. La différence est qu'il peut fusionner des tableaux associatifs.
$arr1 = array('a' => 'pomme', 'b' => 'ball');
$arr2 = array('c' => 'cat', 'd' => 'dog');
$result = array_merge_recursive($arr1, $arr2);
Le code ci-dessus fusionnera les deux tableaux associatifs $arr1 et $arr2 ensemble et stockera le résultat dans le tableau $result.
Il convient de noter que la fonction array_merge_recursive() fusionnera les tableaux de manière récursive et que l'opération de fusion peut être effectuée correctement même si d'autres tableaux sont imbriqués dans le tableau.
3.array_combine() fonction
array_combine() peut combiner deux tableaux dans un tableau associatif, où la valeur du premier tableau est utilisée comme valeur clé du tableau associatif et la valeur du deuxième tableau est utilisée comme valeur d'élément de tableau associatif. Voici l'utilisation de la fonction array_combine() :
$keyArr = array('a', 'b', 'c');
$valArr = array('apple', 'ball', 'cat');
$ result = array_combine($keyArr, $valArr);
Le code ci-dessus générera un tableau associatif, où les noms de clés sont $a, $b et $c, et les valeurs correspondantes sont $apple, $ balle et $cat.
Fonction 4.array_replace()
La fonction array_replace() peut être utilisée pour effectuer des opérations de fusion de tableaux basées sur les noms de clés. Il combine les éléments de deux ou plusieurs tableaux en un seul tableau et remplace les valeurs des clés du même nom. Si une clé n'apparaît que dans l'un des tableaux, la valeur de la clé ne sera pas remplacée. Voici l'utilisation de la fonction array_replace() :
$arr1 = array('a' => 'apple', 'b' => 'ball');
$arr2 = array('b' => ; ' bat', 'c' => 'cat');
$result = array_replace($arr1, $arr2);
Le code ci-dessus fusionnera les deux tableaux associatifs $arr1 et $arr2 et remplacera les clés For éléments avec la valeur $b, remplacez-le par $bat.
5. Fonction array_intersect() La fonction
array_intersect() peut être utilisée pour obtenir l'intersection de plusieurs tableaux, c'est-à-dire ne conserver que les éléments qui apparaissent dans plusieurs tableaux en même temps. Voici l'utilisation de la fonction array_intersect() :
$arr1 = array('a', 'b', 'c');
$arr2 = array('b', 'c', 'd');
$ arr3 = array('c', 'd', 'e');
$result = array_intersect($arr1, $arr2, $arr3);
Le code ci-dessus obtiendra l'intersection des trois tableaux, c'est-à-dire est un élément $ c.
6. Fonction array_diff() La fonction
array_diff() est utilisée pour obtenir l'ensemble de différences de plusieurs tableaux, c'est-à-dire que seuls les éléments qui apparaissent dans le premier tableau et n'apparaissent pas dans les autres tableaux sont conservés. Voici l'utilisation de la fonction array_diff() :
$arr1 = array('a', 'b', 'c');
$arr2 = array('b', 'c', 'd');
$ arr3 = array('c', 'd', 'e');
$result = array_diff($arr1, $arr2, $arr3);
Le code ci-dessus obtiendra les éléments qui n'apparaissent que dans $arr1, c'est-à-dire l'élément $a.
3. Exemple de collection de tableaux PHP
Avec les connaissances ci-dessus, nous pouvons implémenter un code PHP qui cherche à combiner plusieurs tableaux. Voici l'implémentation du code :
function array_union(...$arrays) {
$res = array(); foreach($arrays as $arr) { $res = array_merge_recursive($res, $arr); } return $res;
}
Le code ci-dessus utilise des paramètres variables (...) pour représenter plusieurs tableaux. Dans la fonction, nous utilisons une boucle foreach pour parcourir tous les tableaux de paramètres entrants, les fusionner à l'aide de la fonction array_merge_recursive() et enfin renvoyer le tableau de résultats fusionné.
Avec cette fonction, nous pouvons l'appeler pour résoudre l'ensemble de plusieurs tableaux, comme suit :
$arr1 = array('a' => 'apple', 'b' => 'ball' );
$arr2 = array('b' => 'chauve-souris', 'c' => 'cat', 'd' => 'chien');
$arr3 = array('c' => ; 'cat ', 'd' => 'deer', 'e' => 'elephant');
$result = array_union($arr1, $arr2, $arr3);
Le code ci-dessus sera fusionné. et un seul tableau associatif contenant tous les éléments est renvoyé.
Résumé
Les tableaux sont une structure de données très importante en PHP Nous avons souvent besoin de fusionner plusieurs tableaux pour obtenir une collection. Cet article présente quelques fonctions de tableau utiles en PHP, notamment array_merge(), array_merge_recursive(), array_combine(), array_replace(), array_intersect() et array_diff(). Nous avons également implémenté une fonction pour trouver l'union de plusieurs tableaux. Les lecteurs peuvent choisir la fonction qui leur convient en fonction de leurs propres besoins pour effectuer des opérations sur les tableaux.
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!