Maison > développement back-end > Problème PHP > Comment supprimer les valeurs en double d'un tableau en php

Comment supprimer les valeurs en double d'un tableau en php

PHPz
Libérer: 2023-04-19 14:30:37
original
760 Les gens l'ont consulté

Pendant le processus de développement, le traitement des tableaux est souvent impliqué et le problème du traitement des valeurs en double est plus courant. Par exemple, dans le panier, lorsque les utilisateurs ajoutent le même produit, ils doivent déterminer si le produit existe déjà pour éviter des ajouts répétés. Dans ces scénarios, nous avons besoin d'un moyen de supprimer les valeurs en double et de garantir l'exactitude des données. En tant que langage de script côté serveur couramment utilisé, PHP fournit une variété de fonctions et de méthodes pour traiter les tableaux. Cet article présentera une méthode d'utilisation de PHP pour éliminer les valeurs en double d'un tableau.

1. Utilisez la fonction array_unique()

array_unique() est une fonction intégrée à PHP qui peut être utilisée pour supprimer les valeurs en double dans un tableau. Le format de syntaxe de cette fonction est le suivant :

array_unique($array, $sort_flags = SORT_STRING)
Copier après la connexion

Parmi eux, $array représente le tableau pour supprimer les valeurs en double, et $sort_flags représente l'indicateur de tri facultatif. Si $sort_flags n'est pas spécifié ou est SORT_STRING, toutes les données en double dans le tableau seront supprimées et les clés d'origine du tableau seront conservées. Si $sort_flags vaut SORT_NUMERIC, les valeurs du tableau seront converties en valeurs numériques à des fins de comparaison et les clés d'origine ne seront pas conservées. Voici l'exemple de code pour cette fonction :

<?php
$a = array(1,2,3,1,2,4,5);
$b = array_unique($a);
print_r($b);
?>
Copier après la connexion

Le code donne :

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [5] => 4
    [6] => 5
)
Copier après la connexion

Comme vous pouvez le voir, les valeurs en double dans un tableau peuvent être facilement supprimées à l'aide de la fonction array_unique(). Cependant, cette fonction conservera les valeurs clés d'origine du tableau. Si vous devez réorganiser l'index du tableau, vous pouvez utiliser la fonction array_values().

2. Utilisez la méthode de parcours en boucle

En plus d'utiliser les fonctions intégrées fournies par PHP, nous pouvons également utiliser la méthode de parcours en boucle pour déterminer si les éléments du tableau existent déjà un par un et ajouter les éléments non -éléments existants dans le nouveau tableau. L'idée principale de cette méthode est d'utiliser une boucle foreach pour parcourir le tableau d'origine et d'ignorer directement les valeurs en double si elles sont rencontrées, sinon de les ajouter au nouveau tableau. Le code est le suivant :

<?php
$a = array(1,2,3,1,2,4,5);
$b = array();
foreach($a as $key => $value){
    if(!in_array($value, $b)) {  //判断新数组中是否已经存在该元素
        $b[$key] = $value; //如果不存在,将其添加到新数组中
    }
}
print_r($b);
?>
Copier après la connexion

Le résultat de ce code est le même que l'exemple de code de la fonction array_unique() ci-dessus :

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)
Copier après la connexion

On peut voir que l'utilisation de la méthode de parcours en boucle peut également supprimer les valeurs en double​ dans le tableau, et conserve également les valeurs de clé d'origine.

3. Utilisez la fonction array_flip()

En plus des deux méthodes ci-dessus, nous pouvons également utiliser la fonction array_flip() pour supprimer les valeurs en double dans le tableau. Cette fonction échange les clés et les valeurs du tableau et supprime automatiquement les valeurs en double. Enfin, échangez simplement les clés et les valeurs du tableau. Le code est le suivant :

<?php
$a = array(1,2,3,1,2,4,5);
$a = array_flip($a);   //翻转数组的键和值
$a = array_flip($a);   //再次翻转数组的键和值
print_r($a);
?>
Copier après la connexion

Le résultat de ce code est également le même que les deux exemples de codes précédents :

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [4] => 4
    [6] => 5
)
Copier après la connexion

On peut voir que l'utilisation de la fonction array_flip() peut également supprimer les valeurs en double dans le tableau et conserver les valeurs clés d’origine.

Résumé

Cet article présente trois méthodes d'utilisation de PHP pour éliminer les valeurs en double d'un tableau : en utilisant la fonction array_unique(), la méthode de parcours de boucle et en utilisant la fonction array_flip(). Ces méthodes peuvent supprimer efficacement les valeurs en double dans le tableau et conserver les valeurs clés d'origine. Dans le développement réel, nous pouvons choisir la méthode appropriée pour traiter les valeurs répétées dans le tableau en fonction de nos propres besoins, afin d'atteindre l'objectif de traitement des données.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal