Maison >développement back-end >Problème PHP >Comment supprimer les données en double en php
Comment supprimer les données en double en PHP : 1. Utilisez la fonction "array_unique" pour supprimer directement les valeurs en double dans un tableau ; 2. Utilisez la fonction "array_flip" et la fonction "array_keys" pour supprimer les doublons. données.
Recommandé : "Tutoriel vidéo PHP"
Suppression des données en double des tableaux dans deux méthodes PHP
1. Utilisez directement la fonction array_unique
Utilisez la fonction array_unique pour supprimer directement les valeurs en double dans un tableau, en ne conservant que la première occurrence des valeurs en double et celles correspondantes. la valeur clé
peut être trouvée dans le manuel PHP
Exemple 1 :
$input = array("a" => "green", "red", "b" => "green", "blue", "red"); $result = array_unique($input); print_r($result); 此时输出: Array ( [a] => green [0] => red [1] => blue )
Remarque : dans la fonction array_unique, si int(3) et string( 1) Quand ' 3', la fonction considérera les deux valeurs comme la même valeur, et ne conservera que la valeur qui apparaît en premier
Exemple 2 :
$input = array(4, "4", "3", 4, 3, "3"); $result = array_unique($input); var_dump($result);
A ce moment, elle affichera :
array(2) { [0] => int(4) [2] => string(1) "3" }
2. Utilisez la fonction array_flip et la fonction array_keys ensemble
Il est très pratique d'utiliser la fonction array_unique, mais il y a une chose, la fonction array_unique ne changera pas la valeur de la clé d'origine. de la valeur conservée. Dans certains cas, il est difficile d'exploiter un nouveau tableau. À ce stade, vous pouvez utiliser la fonction array_flip et la fonction array_keys
fonction array_flip
pour échanger les valeurs. et les valeurs clés du tableau spécifié. Les clés deviennent des valeurs et les valeurs du tableau d'origine deviennent des clés, et si la même valeur apparaît plusieurs fois, la dernière clé devient sa valeur et toutes les autres le sont. perdu.
Par exemple :
$trans = array("a" => 1, "b" => 1, "c" => 2); $trans = array_flip($trans); print_r($trans);
La sortie à ce moment est :
Array ( [1] => b [2] => c )
fonction array_keys
la fonction array_keys peut renvoyer tout ou partie des noms de clés du tableau , c'est plus facile à comprendre. Si serch_value est spécifié, la valeur clé de la valeur de requête spécifiée est renvoyée
Par exemple :
$array = array(0 => 100, "color" => "red"); print_r(array_keys($array)); $array = array("blue", "red", "green", "blue", "blue"); print_r(array_keys($array, "blue")); $array = array("color" => array("blue", "red", "green"), "size" => array("small", "medium", "large")); print_r(array_keys($array));
À ce moment, le résultat sera :
Array ( [0] => 0 [1] => color ) Array ( [0] => 0 [1] => 3 [2] => 4 ) Array ( [0] => color [1] => size )
Après avoir introduit les deux fonctions Après utilisation, lorsque vous rencontrez un tableau avec beaucoup de données répétées et que vous souhaitez éliminer les données répétées au milieu et commencer à compter les valeurs clés à partir de « 0 », vous pouvez utilisez d'abord la fonction array_flip sur la fonction, puis utilisez la fonction array_keys sur le nouveau tableau. , vous pouvez obtenir un
Supplément : lorsque l'éditeur a introduit la fonction array_keys, il m'est soudainement venu à l'esprit qu'il devrait y avoir un fonction qui peut extraire les valeurs de tous les tableaux. Après vérification, il existe bien une fonction array_value, qui peut renvoyer toutes les valeurs d'un tableau. La valeur est enregistrée dans un nouveau tableau, de sorte que. la valeur clé peut être comptée à partir de « 0 ». Par conséquent, si vous souhaitez atteindre l'objectif de cet article, vous pouvez également utiliser d'abord la fonction array_unique, puis utiliser la fonction array_value dessus.
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!