Maison  >  Article  >  développement back-end  >  Comment supprimer les tableaux en double en php (sans fonctions intégrées)

Comment supprimer les tableaux en double en php (sans fonctions intégrées)

PHPz
PHPzoriginal
2023-04-21 10:02:30687parcourir

PHP est un langage de script largement utilisé avec une puissante bibliothèque de fonctions intégrée qui peut facilement implémenter de nombreuses fonctions nécessaires au développement quotidien. Cependant, dans certains cas, nous pouvons avoir besoin d'implémenter certaines fonctions qui n'utilisent pas de fonctions intégrées, ce qui nécessite une compréhension et une maîtrise approfondies des connaissances de base du langage PHP. Cet article explique comment supprimer les tableaux en double en PHP sans utiliser les fonctions intégrées.

1. Contexte du problème

Dans le développement réel, nous devons souvent traiter des tableaux, et parfois nous devons supprimer des éléments en double dans le tableau. Ce problème est très simple à résoudre si vous utilisez les fonctions intégrées. PHP fournit de nombreuses fonctions de déduplication, telles que array_unique, array_count_values, etc. Mais dans certains cas, nous devrons peut-être implémenter manuellement la fonction de déduplication nous-mêmes. Par exemple, lors d'un examen ou d'un entretien, vous pouvez être confronté à une situation dans laquelle vous n'êtes pas autorisé à utiliser les fonctions intégrées et ne pouvez implémenter la fonction que manuellement. Par conséquent, dans cet article, nous verrons comment implémenter manuellement la fonction de déduplication avec PHP.

2. Explication de la méthode

L'idée de base de l'implémentation de la fonction est la suivante :

1. Parcourez le tableau d'origine et ajoutez chaque élément au nouveau tableau (si l'élément n'existe pas dans le nouveau tableau).

2. Utilisez la fonction in_array pour déterminer si l'élément apparaît dans le nouveau tableau.

3. Si l'élément apparaît dans le nouveau tableau, aucune opération ne sera effectuée.

4. Si l'élément n'apparaît pas dans le nouveau tableau, ajoutez-le au nouveau tableau.

Voici le code d'implémentation spécifique :

<?php
function deleteRepeat($arr)
{
    $newArr = array();
    foreach($arr as $value){
        if(in_array($value,$newArr)){
            continue;
        }else{
            $newArr[] = $value;
        }
    }
    return $newArr;
}
?>

Dans cette fonction, nous déclarons d'abord un nouveau tableau vide $newArr. Utilisez ensuite une boucle foreach pour parcourir le tableau d'origine $arr. Utilisez la fonction in_array dans le corps de la boucle pour déterminer si chaque élément apparaît dans $newArr. Si l'élément apparaît dans $newArr, utilisez l'instruction continue pour ignorer cette boucle. Sinon, utilisez l'opérateur [] pour ajouter l'élément à $newArr. Enfin, le nouveau tableau $newArr est renvoyé.

3. Tests

Afin de vérifier si notre fonction est valide, nous devons la tester. Le code suivant montre comment utiliser notre fonction pour supprimer les éléments en double d'un tableau :

<?php
$arr = array(3,6,9,6,3,8,1);
$newArr = deleteRepeat($arr);
print_r($newArr);
?>

Le résultat est :

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

Comme vous pouvez le voir, la fonction supprime avec succès les éléments en double du tableau d'origine.

4. Résumé

Dans cet article, nous avons expliqué comment implémenter manuellement la fonction de déduplication des tableaux en PHP. Étant donné que PHP possède de nombreuses fonctions intégrées pour la déduplication, de nombreux développeurs peuvent trouver redondant d'implémenter cette fonction manuellement. Cependant, dans certains cas, il est important de savoir implémenter cette fonctionnalité manuellement, car cela démontre votre maîtrise des bases du langage PHP. Dans le même temps, l'implémentation manuelle de la fonction de déduplication peut également nous aider à mieux comprendre le flux de travail des opérations sur les tableaux en PHP, ce qui est également d'une grande aide pour l'optimisation et le débogage de notre code pendant le développement.

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