Maison  >  Article  >  développement back-end  >  Comment implémenter la déduplication de tableau en php

Comment implémenter la déduplication de tableau en php

PHPz
PHPzoriginal
2023-03-29 11:33:501468parcourir

Dans le développement Web, la déduplication de tableaux est une opération courante. En PHP, plusieurs méthodes sont fournies pour réaliser la déduplication de tableau. Cet article présentera les 3 méthodes les plus couramment utilisées.

Méthode 1 : utilisez la fonction array_unique()

La fonction array_unique() peut supprimer les éléments en double du tableau et renvoyer un nouveau tableau dédupliqué. L'utilisation de cette fonction est très simple, il suffit de passer en paramètre le tableau à dédupliquer. Voici un exemple de code pour cette fonction :

<?php
$arr = array(1, 2, 2, 3, 4, 4, 5, 5);
$new_arr = array_unique($arr);
print_r($new_arr);
?>

Résultat de sortie :

Array
(
    [0] => 1
    [1] => 2
    [3] => 3
    [4] => 4
    [6] => 5
)

Cette méthode est très simple, mais elle ne peut pas conserver les noms de clé du tableau d'origine. Si vous devez conserver les noms de clé du tableau d'origine, vous pouvez utiliser la méthode décrite ci-dessous.

Méthode 2 : utiliser le parcours de boucle

En utilisant la boucle for ou la boucle foreach de PHP, vous pouvez parcourir l'ensemble du tableau et supprimer les éléments en double par jugement. Voici un exemple de code permettant d'utiliser une boucle foreach pour réaliser la déduplication d'un tableau :

<?php
$arr = array(1, 2, 2, 3, 4, 4, 5, 5);
$new_arr = array();
foreach ($arr as $value) {
    if (!in_array($value, $new_arr)) {
        $new_arr[] = $value;
    }
}
print_r($new_arr);
?>

Résultat de sortie :

Array
(
    [0] => 1
    [1] => 2
    [3] => 3
    [4] => 4
    [6] => 5
)

Cette méthode peut conserver les noms de clé du tableau d'origine, mais elle nécessite une boucle pour parcourir le tableau, donc l'efficacité est relativement faible.

Méthode 3 : utilisez les fonctions array_flip() et array_keys()

La fonction array_flip() peut inverser le nom de clé et la valeur de clé du tableau. En utilisant cette fonction, vous pouvez utiliser la valeur du tableau d'origine comme nom de clé et le nom de clé comme valeur pour générer un nouveau tableau. Utilisez ensuite la fonction array_keys() pour obtenir le nom de clé du nouveau tableau, obtenant ainsi le tableau dédupliqué. Voici un exemple de code :

<?php
$arr = array(1, 2, 2, 3, 4, 4, 5, 5);
$tmp_arr = array_flip($arr);
$new_arr = array_keys($tmp_arr);
print_r($new_arr);
?>

Résultat de sortie :

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)

Cette méthode peut conserver les noms de clé du tableau d'origine et est plus efficace, mais elle nécessite l'utilisation de deux fonctions, ce qui est plus fastidieux.

Résumé

En développement réel, choisissez la méthode pour implémenter la déduplication de baie en fonction de la situation spécifique. Si vous n'avez pas besoin de conserver les noms de clé du tableau d'origine, vous pouvez utiliser la fonction array_unique() la plus simple ; si vous devez conserver les noms de clé du tableau d'origine, vous devez utiliser le parcours de boucle ou array_flip() et array_keys ; () fonctions.

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!

Déclaration:
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