Maison >développement back-end >Problème PHP >Comment supprimer les doublons du tableau php
Comment supprimer les éléments en double dans un tableau PHP : 1. Utilisez directement array_unique() pour supprimer, la syntaxe est "array_unique(array)". 2. Utilisez d'abord la fonction array_flip() pour inverser le tableau et supprimer les doublons ; puis utilisez la fonction array_flip() pour l'inverser.
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3
Méthode 1, PHP a les fonctions intégrées array_unique peuvent être utilisées pour supprimer les valeurs en double dans le tableau
array_unique -- Supprimer les valeurs en double dans le tableau
array_unique description
array array_unique ( array array )
array_unique() accepte le tableau comme Enter et renvoie un nouveau tableau sans valeurs en double
Notez que les noms de clés restent inchangés. array_unique() trie d'abord les valeurs sous forme de chaînes, puis conserve uniquement la première clé rencontrée pour chaque valeur, puis ignore toutes les clés suivantes. Cela ne signifie pas que la première occurrence de la même valeur dans un tableau non trié sera conservée.
Remarque : Deux unités sont considérées comme identiques si et seulement si (string) $elem1 === (string) $elem2. Autrement dit, lorsque les expressions des chaînes sont les mêmes.
La première unité sera conservée.
Exemple : array_unique()
<?php $input = array("a" => "green", "red", "b" => "green", "blue", "red"); $result = array_unique($input); print_r($result); ?>
Sortie :
Array ( [a] => green [0] => red [1] => blue )
Méthode 2, array_flip obtient un effet de déduplication
Une autre méthode qu'il utilise la fonction array_flip de PHP pour obtenir indirectement l'effet de déduplication
array_flip est une fonction qui inverse les clés et les valeurs du tableau. Elle a une fonctionnalité qui si deux valeurs du tableau sont les mêmes. idem, puis après l'inverse La dernière clé et la dernière valeur seront conservées. En utilisant cette fonctionnalité, nous l'utilisons pour implémenter indirectement la déduplication du tableau
<?php $arr = array("a"=>"a1","b"=>'b1',"c"=>"a2","d"=>"a1"); $arr1 = array_flip($arr); print_r($arr1);//先反转一次,去掉重复值,输出Array ( [a1] => d [b1] => b [a2] => c ) $arr2 = array_flip($arr); print_r($arr2);//再反转回来,得到去重后的数组,输出Array ( [a1] => d [b1] => b [a2] => c ) $arr3 = array_unique($arr); print_r($arr3);//利用php的array_unique函数去重,输出Array ( [a] => a1 [b] => b1 [c] => a2 ) ?>
La différence entre les deux méthodes est que l'utilisation de array_flip obtient la dernière clé. et la valeur de l'élément répété, et en utilisant array_unique Ce qui est obtenu est la première clé et la première valeur des deux éléments répétés.
Apprentissage recommandé : "Tutoriel vidéo PHP"
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!