Maison  >  Article  >  développement back-end  >  Comment supprimer les valeurs nulles du tableau en php

Comment supprimer les valeurs nulles du tableau en php

PHPz
PHPzoriginal
2023-04-23 09:13:122172parcourir

Dans le développement PHP, il est souvent nécessaire d'opérer sur des tableaux, et supprimer les valeurs nulles des tableaux est l'une des opérations les plus courantes. La situation la plus courante est que lors de l'obtention de données à partir d'un formulaire, certaines données peuvent être laissées vides par l'utilisateur, mais lors du traitement ultérieur, ces valeurs vides affecteront le fonctionnement normal du programme. Par conséquent, nous devons supprimer ces valeurs nulles.

Cet article présentera plusieurs méthodes pour supprimer les valeurs nulles​​des tableaux en PHP.

Méthode 1 : Utilisez la fonction array_filter()

array_filter() est une fonction intégrée en PHP qui peut filtrer les éléments d'un tableau. On peut passer une fonction de rappel en paramètre, et la fonction de rappel renvoie une valeur booléenne. Lorsqu'elle est vraie, l'élément est conservé, lorsqu'elle est fausse, l'élément est supprimé. Si aucune fonction de rappel n'est transmise, toutes les valeurs nulles, 0, false et null du tableau sont supprimées.

L'exemple de code est le suivant :

$arr = array('a', '', 'b', null, 'c', ' ', 'd', false);
$arr = array_filter($arr, 'strlen');
print_r($arr);

Le résultat de sortie est le suivant :

Array
(
    [0] => a
    [2] => b
    [4] => c
    [6] => d
)

Dans le code ci-dessus, nous utilisons la fonction strlen comme fonction de rappel, qui renvoie la longueur d'une chaîne si la longueur du. la chaîne est 0, elle est fausse. Par conséquent, tous les éléments de longueur non nulle sont conservés.

Méthode 2 : utiliser la boucle foreach

Une autre méthode courante pour supprimer les valeurs nulles​​d'un tableau consiste à utiliser une boucle foreach pour parcourir le tableau et supprimer les valeurs nulles. L'exemple de code est le suivant :

$arr = array('a', '', 'b', null, 'c', ' ', 'd', false);

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

print_r($arr);

Le résultat de sortie est le même que celui de la première méthode :

Array
(
    [0] => a
    [2] => b
    [4] => c
    [6] => d
)

Dans le code ci-dessus, nous utilisons la fonction empty() pour déterminer si l'élément est vide, et s'il est vide, utilisez la fonction unset() pour supprimer l'élément.

Méthode 3 : Utilisez la fonction array_diff()

Il existe également une méthode pour utiliser la fonction array_diff() pour supprimer les valeurs nulles dans le tableau. La fonction array_diff() est une fonction intégrée à PHP utilisée pour calculer la différence d'un tableau. Lorsque nous calculons la valeur nulle d'un tableau en tant que « ensemble de différences » avec un autre tableau vide, nous pouvons obtenir le tableau d'origine après avoir supprimé la valeur nulle.

L'exemple de code est le suivant :

$arr = array('a', '', 'b', null, 'c', ' ', 'd', false);
$arr = array_diff($arr, array(''));

print_r($arr);

Le résultat de sortie est le même que les deux méthodes ci-dessus :

Array
(
    [0] => a
    [2] => b
    [4] => c
    [6] => d
)

Dans le code ci-dessus, nous utilisons un tableau vide comme paramètre. Ce tableau vide n'a aucun élément, donc son. la différence est le tableau d'origine supprimé. Le résultat après la valeur nulle.

Résumé

Cet article présente trois méthodes pour supprimer les valeurs vides des tableaux en PHP : en utilisant la fonction array_filter(), en utilisant la boucle foreach et en utilisant la fonction array_diff(). Ces méthodes peuvent supprimer efficacement les valeurs nulles du tableau et rendre le programme plus stable. Dans le développement réel, nous pouvons choisir une méthode qui nous convient en fonction de besoins spécifiques.

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