Trois méthodes : 1. Utilisez array_unique, la syntaxe "array_unique(array)" ; 2. Utilisez array_flip(), la syntaxe "array_flip(array_flip(array))" ; 3. Utilisez foreach et deux tableaux vides, la syntaxe " ; foreach ($arr comme $k1=>$v1){$r1[$v1]=$k1;}foreach($r1 comme $k2=>$v2){$r2[$v2]=$k2;} » .
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3
Supprimer les mêmes valeursdans le tableau consiste à supprimer les valeurs en doubledans le tableau. Il existe de nombreuses façons de supprimer les doublons des tableaux PHP. Présentons-les ci-dessous.
Méthode 1 : Utilisez la fonction de déduplication array_unique()
array_unique() La fonction est utilisée pour supprimer les valeurs en double dans le tableau. Si deux ou plusieurs valeurs du tableau sont identiques, seule la première valeur est conservée et les autres valeurs sont supprimées.
Remarque : le tableau conservé conservera le type de clé du premier élément du tableau.
array_unique(array,sortingtype)
Paramètres | Description |
---|---|
array | Obligatoire. Spécifie un tableau. |
type de tri | facultatif. Spécifie le type de tri. Valeurs possibles :
|
Valeur de retour : renvoie le tableau filtré.
Exemple : Supprimez les mêmes valeurs
<?php $arr1 =array("a"=>"Cat",2,"b"=>"Dog","c"=>"Cat",2,3,4,3); var_dump($arr1); $arr2=array_unique($arr1); var_dump($arr2); ?>
Méthode 2 : Utilisez la fonction array_flip()
La fonction array_flip() est utilisée pour inverser/échanger les noms de clés dans le tableau et les valeurs clés associées correspondantes.
Le nom de clé du tableau est unique et n'existera pas de manière répétée.
Grâce à cette fonctionnalité, si deux valeurs du tableau sont identiques, la dernière clé et la dernière valeur seront conservées après avoir inversé le tableau, ce qui peut indirectement réaliser la déduplication du tableau.
<?php $arr =array("a"=>"Cat",2,"b"=>"Dog","c"=>"Cat",2,3,4,3); var_dump($arr); $arr1 = array_flip($arr);//先反转一次,去掉重复值 var_dump($arr1); $arr2 = array_flip($arr1);//再反转回来,得到去重后的数组 var_dump($arr2); ?>
La différence entre la méthode 1 et la méthode 2 :
Utilisez array_flip() pour obtenir la dernière clé et la dernière valeur de l'élément répété, et utilisez array_unique pour obtenir la première clé et la première valeur de l'élément répété.
Méthode 3 : utilisez l'instruction foreach et deux tableaux vides
Ou utilisez la fonctionnalité unique des noms de clés, utilisez l'instruction foreach et deux tableaux vides pour inverser les positions des noms de clés et des valeurs clés de le tableau deux fois.
<?php header("content-type:text/html;charset=utf-8"); function f($arr){ var_dump($arr); $res1=[]; $res2=[]; foreach($arr as $k1=>$v1){ $res1[$v1]=$k1; } foreach ($res1 as $k2 => $v2){ $res2[$v2]=$k2; } echo "去重后的数组:"; var_dump($res2); } $arr=array(1,2,3,4,5,4,3,2,1,0); f($arr); ?>
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!