Maison  >  Article  >  développement back-end  >  Comment supprimer les éléments vides du tableau php

Comment supprimer les éléments vides du tableau php

PHPz
PHPzoriginal
2023-04-24 14:50:56707parcourir

Dans le développement PHP, le traitement des tableaux est une opération très courante. Dans les applications pratiques, nous rencontrons souvent des situations où les tableaux contiennent des éléments vides. Si ces éléments vides ne sont pas traités, le fonctionnement normal du programme peut être affecté. Par conséquent, cet article va vous montrer comment supprimer des éléments vides d’un tableau à l’aide de PHP.

1. Qu'est-ce qu'un élément vide

En PHP, nous pouvons créer un tableau de la manière suivante :

$arr = array('foo', '', 'bar');

Le code ci-dessus crée un tableau contenant 3 éléments, où le premier élément est 'foo' et le deuxième élément. is Les éléments sont des chaînes vides et le troisième élément est « bar ». Dans le développement réel, il existe de nombreux cas de tels éléments vides. Par exemple, des données vides peuvent exister dans les données de formulaire soumises par les utilisateurs, ou des données vides peuvent également apparaître dans les opérations de requête de base de données.

2. Utilisez la fonction array_filter() pour supprimer les éléments vides

PHP intègre de nombreuses fonctions de tableau utiles, y compris la fonction array_filter(). La fonction array_filter() est utilisée pour filtrer les éléments d'un tableau selon des conditions spécifiées et renvoyer un nouveau tableau. Généralement, nous utilisons la fonction de rappel de la fonction array_filter() pour filtrer les éléments du tableau afin de supprimer les éléments vides.

Ce qui suit est un exemple de code qui utilise la fonction array_filter() pour supprimer les éléments vides du tableau :

$arr = array('foo', '', 'bar');

// 定义回调函数
function filter_empty($var) {
    return trim($var) != '';
}

// 使用 array_filter() 函数去除空白元素
$arr = array_filter($arr, 'filter_empty');

// 输出新数组
print_r($arr);

Exécutez le code ci-dessus, le résultat de sortie est :

Array
(
    [0] => foo
    [2] => bar
)

Comme le montre le code ci-dessus, utilisez le Fonction array_filter() pour supprimer les éléments vides dans le tableau d'origine. Une fois les éléments supprimés, un nouveau tableau contenant uniquement des éléments non vides est renvoyé.

Dans l'exemple de code ci-dessus, nous avons utilisé une fonction nommée filter_empty comme fonction de rappel. Cette fonction utilise la fonction trim() pour supprimer les espaces des deux côtés de la chaîne, puis détermine si la chaîne est une chaîne vide. S'il ne s'agit pas d'une chaîne vide, elle renvoie vrai, indiquant que l'élément doit être conservé ; sinon, elle renvoie faux, indiquant que l'élément doit être filtré.

3. Utilisez foreach() pour faire fonctionner les tableaux

En plus d'utiliser la fonction array_filter(), vous pouvez également utiliser foreach() pour parcourir le tableau, puis utiliser la fonction unset() pour supprimer les éléments vides. Voici un exemple de code qui utilise une boucle foreach() pour supprimer les éléments vides dans un tableau :

$arr = array('foo', '', 'bar');

foreach ($arr as $i => $value) {
    if (trim($value) == '') {
        unset($arr[$i]);
    }
}

// 重新建立索引
$arr = array_values($arr);

// 输出新数组
print_r($arr);

En exécutant le code ci-dessus, le résultat est :

Array
(
    [0] => foo
    [1] => bar
)

Dans le code ci-dessus, nous utilisons une boucle foreach() pour parcourir chaque élément du tableau. Si l'élément est un élément vide, c'est-à-dire qu'il s'agit d'une chaîne vide après avoir appelé la fonction trim() pour supprimer les espaces des deux côtés, utilisez la fonction unset() pour supprimer l'élément. Enfin, nous réindexons le tableau à l'aide de la fonction array_values(), ce qui donne un nouveau tableau qui ne contient pas d'éléments vides.

4. Utilisez la fonction array_reduce() pour supprimer les éléments vides

En plus des deux méthodes ci-dessus, vous pouvez également utiliser la fonction array_reduce() pour supprimer les éléments vides du tableau. La fonction array_reduce() est utilisée pour parcourir chaque élément du tableau, calculer tous les éléments via la fonction de rappel et renvoyer une valeur unique.

Ce qui suit est un exemple de code qui utilise la fonction array_reduce() pour supprimer les éléments vides dans un tableau :

$arr = array('foo', '', 'bar');

// 定义回调函数
function reduce_empty($carry, $item) {
    if (trim($item) != '') {
        $carry[] = $item;
    }
    return $carry;
}

// 使用 array_reduce() 函数去除空白元素
$arr = array_reduce($arr, 'reduce_empty', array());

// 输出新数组
print_r($arr);

Exécutez le code ci-dessus, le résultat de sortie est :

Array
(
    [0] => foo
    [1] => bar
)

Dans le code ci-dessus, nous définissons une fonction nommée réduire_empty , qui utilise pour chaque élément du tableau itéré. Si l'élément n'est pas un élément vide, l'élément est ajouté à un nouveau tableau et le nouveau tableau est renvoyé. Enfin, utilisez la fonction array_reduce() pour supprimer les éléments vides du tableau d'origine et renvoyer le nouveau tableau.

5. Résumé

Cet article présente trois méthodes d'utilisation de PHP pour supprimer des éléments vides dans un tableau : en utilisant la fonction array_filter(), en utilisant la boucle foreach() et en utilisant la fonction array_reduce(). Bien que ces méthodes soient différentes, elles peuvent toutes supprimer efficacement les éléments vides du tableau, évitant ainsi d'affecter le fonctionnement normal du programme. Dans le développement réel, nous pouvons choisir la méthode appropriée pour fonctionner en fonction de la situation réelle.

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