Maison  >  Article  >  développement back-end  >  Comment parcourir un tableau et supprimer les valeurs nulles à l'aide de PHP

Comment parcourir un tableau et supprimer les valeurs nulles à l'aide de PHP

PHPz
PHPzoriginal
2023-04-27 09:08:28541parcourir

En PHP, il est souvent nécessaire de parcourir un tableau et de filtrer les valeurs utiles. Cependant, il y a parfois des valeurs nulles inutiles dans le tableau et elles doivent être supprimées pour garantir l'exactitude du tableau. Cet article explique comment utiliser PHP pour parcourir un tableau et en supprimer les valeurs nulles.

  1. Traversée de tableau de base

En PHP, le moyen le plus simple de parcourir un tableau est d'utiliser une boucle foreach. La structure de base de la boucle foreach est la suivante :

foreach ($array as $value) {
   // 对value进行操作
}

Cette boucle attribuera chaque élément du tableau $array à la variable $value et opérera sur $value dans le corps de la boucle. Cependant, cette méthode de parcours ne supprimera pas les valeurs nulles dans le tableau et d'autres méthodes doivent être utilisées pour le filtrage.

  1. Utilisez la fonction array_filter

PHP fournit une fonction array_filter, qui peut supprimer les éléments qui ne remplissent pas les conditions du tableau. Son utilisation de base est la suivante :

$new_array = array_filter($array, 'callback');

Cette fonction transmettra tous les éléments du tableau $array à la fonction de rappel, puis renverra un nouveau tableau $new_array, qui ne contient que des éléments pour lesquels la fonction de rappel renvoie une valeur true. . Cependant, la fonction de rappel est trop lourde. Nous pouvons utiliser des fonctions anonymes pour simplifier le code :

$new_array = array_filter($array, function($value){
    return !empty($value);
});

Ce code filtrera tous les éléments non vides du tableau $array et les enregistrera dans le tableau $new_array.

  1. Utilisez les fonctions foreach et unset

Une autre méthode courante consiste à utiliser la boucle foreach et la fonction unset. Le processus de base consiste à parcourir chaque élément du tableau, à le conserver s'il n'est pas vide, sinon à le supprimer. L'exemple de code est le suivant :

foreach($array as $key => $value) {
    if(empty($value)) {
        unset($array[$key]);
    }
}

Ce code utilise d'abord une boucle foreach pour parcourir chaque élément du tableau $array, et utilise une instruction if pour déterminer si $value est vide. S'il est vide, utilisez la fonction unset pour supprimer l'élément du tableau $array.

Bien que cette méthode soit simple et directe, l'utilisation de la fonction unset pendant la boucle peut entraîner des problèmes de performances et ne convient pas aux grands tableaux.

  1. Utilisez la fonction array_walk

La fonction array_walk peut utiliser la fonction de rappel pour traiter chaque élément du tableau. Lors de l'utilisation, on peut modifier le tableau d'origine en passant par référence. L'utilisation de base est la suivante :

function removeEmpty(&$value, $key){
    if(empty($value)){
        unset($value);
    }
}
array_walk($array, 'removeEmpty');

Ce code définit une fonction de rappel removeEmpty, qui utilise la méthode de passage de référence pour transmettre $value à la fonction et détermine si $value est vide à l'intérieur de la fonction. S'il est vide, utilisez le unset. fonction pour le supprimer de Supprimer du tableau. Enfin, utilisez la fonction array_walk pour appliquer la fonction removeEmpty au tableau $array afin de supprimer les valeurs nulles qu'il contient.

  1. Résumé

Cet article présente plusieurs méthodes pour parcourir un tableau et supprimer les valeurs nulles en PHP. La plus pratique et la plus rapide consiste à utiliser la fonction array_filter. Si vous devez supprimer les valeurs nulles directement pendant la boucle, vous pouvez utiliser les fonctions foreach et unset ou la fonction array_walk. En utilisant ces méthodes, vous pouvez nettoyer les données du tableau et garantir leur exactitude.

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