Maison  >  Article  >  développement back-end  >  Comment supprimer les mêmes éléments dans un tableau en php

Comment supprimer les mêmes éléments dans un tableau en php

PHPz
PHPzoriginal
2023-04-25 17:36:23806parcourir

Dans le développement Web, les opérations sur les tableaux sont une compétence très courante et essentielle. Il existe de nombreuses façons d'opérer sur des tableaux en PHP, notamment l'ajout, la modification et la suppression d'éléments d'un tableau. Cet article se concentrera sur la façon de supprimer des éléments identiques à l'aide de l'une des opérations de tableau PHP.

Les mêmes éléments du tableau ont généralement un impact négatif sur la logique du code. Par exemple, des données en double rendront l'exécution du code inefficace. Heureusement, PHP apporte une solution à ce problème.

Tout d'abord, examinons plusieurs façons de supprimer des éléments identiques dans un tableau en PHP.

Méthode 1 : Utiliser la fonction array_unique

array_unique est une fonction d'empaquetage en PHP utilisée pour supprimer les valeurs en double d'un tableau. Cette fonction renvoie un nouveau tableau contenant uniquement les valeurs uniques du tableau d'origine. L'utilisation spécifique est la suivante :

$array = array('东京', '纽约', '上海', '纽约');
$array = array_unique($array);
print_r($array);

Résultat de sortie :

Array
(
    [0] => 东京
    [1] => 纽约
    [2] => 上海
)

Méthode 2 : Utiliser la boucle for

Utiliser la boucle for pour parcourir le tableau et comparer chaque élément Est-il identique à l'élément précédent ? Si oui, supprimez l'élément. Le code spécifique est le suivant :

$array = array('东京', '纽约', '上海', '纽约');
for ($i = 0; $i < count($array); $i++) {
    for ($j = $i + 1; $j < count($array); $j++) {
        if ($array[$i] == $array[$j]) {
            array_splice($array, $j, 1);
            $j--;
        }
    }
}
print_r($array);

Résultat de sortie :

Array
(
    [0] => 东京
    [1] => 纽约
    [2] => 上海
)

Méthode 3 : Utiliser les fonctions array_flip et array_keys

array_flip la fonction peut échanger des clés dans le tableau et les valeurs, tandis que la fonction array_keys peut renvoyer toutes les clés d'un tableau. En combinant ces deux fonctions, nous pouvons facilement supprimer les éléments en double du tableau.

Le code spécifique est le suivant :

$array = array('东京', '纽约', '上海', '纽约');
$array = array_flip($array);
$array = array_keys($array);
print_r($array);

Résultat de sortie :

Array
(
    [0] => 东京
    [1] => 纽约
    [2] => 上海
)

Les trois méthodes ci-dessus peuvent toutes réaliser l'opération de suppression des mêmes éléments dans le tableau, mais les méthodes d'implémentation entre elles sont différentes. La méthode adaptée à votre scénario de développement dépend de la situation.

Il est à noter que l'opération de suppression des mêmes éléments dans le tableau ne nécessite pas nécessairement l'utilisation de fonctions fournies par PHP. Parfois, nous pouvons également réaliser cette opération en écrivant notre propre code. Voici un exemple :

Méthode 4 : écrivez votre propre fonction de suppression

function delSameValue(array $array) {
    $result = array();
    foreach ($array as $value) {
        if (!in_array($value, $result)) {
            $result[] = $value;
        }
    }
    return $result;
}

$array = array('东京', '纽约', '上海', '纽约');
$array = delSameValue($array);
print_r($array);

Résultat de sortie :

Array
(
    [0] => 东京
    [1] => 纽约
    [2] => 上海
)

La méthode ci-dessus supprime uniquement la même chose éléments dans le tableau Il existe plusieurs façons. Si vous avez besoin d'opérations supplémentaires sur le tableau, vous devez continuer à apprendre d'autres fonctions et techniques connexes en PHP. Dans le même temps, vous devez faire attention au choix de la méthode optimale pour résoudre le problème en fonction de la situation réelle lors du traitement des tableaux, afin d'obtenir une meilleure efficacité d'exécution et un code plus simple.

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