Maison > Article > développement back-end > php supprime les éléments en double du tableau
En PHP, le tableau est un type de données très courant et couramment utilisé. Lors de l'utilisation de tableaux, nous rencontrons souvent des éléments en double dans le tableau. À ce stade, nous devons supprimer les éléments en double dans le tableau. Cet article présentera plusieurs méthodes pour supprimer les éléments en double d'un tableau en PHP.
Méthode 1 : utilisez la fonction array_unique()
La fonction array_unique() est l'une des fonctions intégrées de PHP et peut être utilisée pour supprimer les éléments en double d'un tableau. Cette fonction peut accepter un tableau comme paramètre et renvoyer le tableau dédupliqué. Voici un exemple de code qui utilise la fonction array_unique() pour supprimer les éléments en double d'un tableau :
<?php $original_array = array("foo", "bar", "foo", "baz", "qux", "bar"); $unique_array = array_unique($original_array); print_r($unique_array); ?>
Le résultat du code ci-dessus est :
Array ( [0] => foo [1] => bar [3] => baz [4] => qux )
Bien que cette méthode soit simple, il convient de noter que cette fonction ne fera que supprimez les éléments identiques dans le tableau Elements, rien ne peut être fait sur les éléments de même valeur mais de clés différentes.
Méthode 2 : utiliser la fonction for loop et in_array()
En PHP, l'utilisation de la fonction for loop et in_array() peut également supprimer les éléments en double dans le tableau. Le principe de cette méthode est de parcourir chaque élément du tableau et d'utiliser la fonction in_array() pour déterminer si l'élément est déjà apparu dans le nouveau tableau. S'il n'apparaît pas auparavant, l'élément est ajouté au nouveau tableau. Voici un exemple de code qui utilise une boucle for et la fonction in_array() pour supprimer les éléments en double d'un tableau :
<?php $original_array = array("foo", "bar", "foo", "baz", "qux", "bar"); $new_array = array(); for ($i = 0; $i < count($original_array); $i++) { if (!in_array($original_array[$i], $new_array)) { $new_array[] = $original_array[$i]; } } print_r($new_array); ?>
La sortie du code ci-dessus est la même que l'exemple de code de la première méthode.
L'avantage de cette méthode est qu'elle peut supprimer simultanément des éléments de différents types de données tels que des chaînes et des nombres dans le tableau. Cependant, lorsqu'il y a de nombreux éléments du tableau, l'efficacité sera légèrement plus lente que celle de array_unique(). fonction.
Méthode 3 : utiliser les fonctions array_flip() et array_keys()
En PHP, l'utilisation des fonctions array_flip() et array_keys() peut également supprimer rapidement les éléments en double d'un tableau. La fonction array_flip() peut échanger les positions des clés et des valeurs dans le tableau afin que les valeurs du tableau d'origine deviennent des clés dans le nouveau tableau, tandis que la fonction array_keys() peut obtenir les clés du tableau. Par conséquent, vous pouvez d'abord utiliser la fonction array_flip() pour transformer les valeurs du tableau d'origine en clés, puis utiliser la fonction array_keys() pour obtenir les clés du nouveau tableau afin d'obtenir le résultat dédupliqué. Voici un exemple de code qui utilise les fonctions array_flip() et array_keys() pour supprimer les éléments en double d'un tableau :
<?php $original_array = array("foo", "bar", "foo", "baz", "qux", "bar"); $new_array = array_keys(array_flip($original_array)); print_r($new_array); ?>
La sortie du code ci-dessus est la même que l'exemple de code de la première méthode.
L'avantage de cette méthode est qu'elle peut supprimer rapidement les doublons lorsqu'il y a de nombreux éléments du tableau. Cependant, une duplication de clés peut se produire pendant le processus d'obtention de valeurs basées sur les clés, vous devez donc utiliser la fonction array_flip(). pour échanger d'abord les positions des clés et des valeurs.
Lorsque vous utilisez ces méthodes pour supprimer les éléments en double d'un tableau, vous devez faire attention aux points suivants :
Pour résumer, il existe de nombreuses façons de supprimer les éléments en double d'un tableau en PHP. Vous pouvez choisir la méthode appropriée en fonction de la situation réelle.
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!