Comment supprimer des tableaux avec la même valeur en php

PHPz
Libérer: 2023-04-24 15:57:00
original
564 Les gens l'ont consulté

La manipulation de tableaux est une tâche courante dans le développement PHP. Mais s'il y a des éléments en double dans le tableau, vous devez utiliser une méthode pour supprimer les doublons. Cet article va vous montrer comment supprimer des tableaux avec des valeurs identiques à l'aide de PHP.

  1. Utilisez la fonction array_unique()

La fonction array_unique() est la propre fonction de déduplication de PHP, qui peut facilement supprimer des éléments identiques :

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

Description du paramètre :

  • $array (obligatoire) : Array. pour supprimer les doublons.
  • $sort_flags (facultatif) : Paramètre facultatif indiquant comment trier le tableau. La valeur par défaut est SORT_STRING, qui compare par chaîne.

La méthode d'utilisation est la suivante :

$originalArray = array('a', 'b', 'c', 'a', 'b');
$uniqueArray = array_unique($originalArray);
print_r($uniqueArray);

// 输出
// Array
// (
//     [0] => a
//     [1] => b
//     [2] => c
// )
Copier après la connexion

On peut voir que la fonction array_unique() peut facilement supprimer les éléments en double dans le tableau et conserver les éléments non en double.

  1. Utilisez des boucles pour supprimer les doublons

En plus de la fonction array_unique(), vous pouvez également utiliser des boucles pour supprimer les doublons. L'ensemble du processus est le suivant : parcourez le tableau d'origine, comparez chaque élément et si le même élément est trouvé, filtrez-le.

Le code d'opération spécifique est le suivant :

$originalArray = array('a', 'b', 'c', 'a', 'b');
$uniqueArray = array();

foreach($originalArray as $value){
    if(!in_array($value, $uniqueArray)){
        $uniqueArray[] = $value;
    }
}

print_r($uniqueArray);

// 输出
// Array
// (
//     [0] => a
//     [1] => b
//     [2] => c
// )
Copier après la connexion

Cette méthode doit parcourir l'intégralité du tableau. Lorsque le tableau est grand, elle n'est pas aussi efficace que la fonction array_unique().

  1. Utilisez les fonctions array_flip() et array_keys()

L'utilisation de cette méthode nécessite d'abord de faire une étape pour échanger les valeurs et les clés du tableau, c'est-à-dire convertir le tableau d'origine en un seul avec des valeurs comme clés et les clés comme valeurs du nouveau tableau. Ceci peut être réalisé en utilisant la fonction array_flip().

Ensuite, vous pouvez utiliser la fonction array_keys() pour obtenir toutes les clés du nouveau tableau, c'est-à-dire les éléments non dupliqués. Le code spécifique est le suivant :

$originalArray = array('a', 'b', 'c', 'a', 'b');
$newArray = array_flip($originalArray);
$uniqueArray = array_keys($newArray);

print_r($uniqueArray);

// 输出
// Array
// (
//     [0] => a
//     [1] => b
//     [2] => c
// )
Copier après la connexion

En utilisant cette méthode, même si le tableau d'origine est grand, l'efficacité est très élevée.

En résumé, il existe de nombreuses façons de supprimer des tableaux avec les mêmes valeurs en PHP, et vous pouvez choisir quelle méthode utiliser en fonction de la situation réelle. Bien entendu, si les éléments du tableau sont des types complexes tels que des objets, la fonction array_unique() peut ne pas fonctionner. Dans ce cas, vous pouvez réaliser la déduplication via des méthodes telles que les fonctions de comparaison personnalisé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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!