Comment supprimer des éléments de tableau vides en PHP

Minahil Noor 30 janvier 2023
  1. Utilisation de la fonction array_filter() pour supprimer les éléments de tableau vides en PHP
  2. Utiliser la fonction array_diff() pour supprimer les éléments de tableau vides en PHP
  3. Utiliser la fonction unset() pour supprimer les éléments de tableau vides en PHP
Comment supprimer des éléments de tableau vides en PHP

Dans cet article, nous allons introduire des méthodes pour supprimer les éléments de tableau vides en PHP.

  • Utilisation de la fonction array_filter()
  • Utilisation de la fonction array_diff()
  • Utilisation de la fonction unset()

Utilisation de la fonction array_filter() pour supprimer les éléments de tableau vides en PHP

La fonction intégrée array_filter() supprime tous les éléments vides, les zéros, les valeurs fausses et nulles d’un tableau. Cette fonction utilise une fonction de rappel pour filtrer les valeurs du tableau. Si aucune fonction de rappel n’est spécifiée, elle supprime les éléments vides, les zéros, les valeurs false et null.

La syntaxe correcte pour utiliser cette fonction est la suivante

array_filter($arrayName, $callbackFunction, $callbackParameter)

Ici, $arrayName est le seul paramètre obligatoire. Le paramètre $callbackFunction est la fonction de rappel spécifiée pour l’opération sur le tableau. Le paramètre $callbackParameter indique les paramètres passés à la fonction de rappel.

<?php
//Declare the array
$flowers = array(
                "Rose",
                "Lili",
                "Jasmine",
                0,
                "Hibiscus",
                "",
                "Tulip",
                null,
                "Sun Flower",
                "Daffodil",
                "Daisy");

$flowers = array_filter($flowers);
echo "The array is:\n";
print_r($flowers);
?>

Nous n’avons spécifié aucune fonction de rappel, par conséquent, le tableau renvoyé n’a pas d’éléments vides, de zéros et de valeurs nulles.

Production:

The array is:
Array
(
    [0] => Rose
    [1] => Lili
    [3] => Jasmine
    [4] => Hibiscus
    [6] => Tulip
    [8] => Sun Flower
    [10] => Daffodil
    [11] => Daisy
)

Utiliser la fonction array_diff() pour supprimer les éléments de tableau vides en PHP

La fonction intégrée array_diff() est utilisée pour trouver la différence entre deux ou plusieurs tableaux. Il peut être utilisé pour supprimer des éléments vides d’un tableau. Il ne ré-indexe pas le tableau. La syntaxe correcte pour utiliser cette fonction est la suivante.

array_diff($array1, $array2, $array3, ... , $arrayN);

Il prend N nombre de paramètres (tableaux). Il compare le premier tableau avec tous les autres tableaux. Elle retourne un tableau qui contient tous les éléments du premier tableau qui ne sont pas présents dans d’autres tableaux.

<?php
//Declare the array
$flowers = array(
                "Rose",
                "Lili",
                "Jasmine",
                0,
                "Hibiscus",
                "",
                "Tulip",
                null,
                "Sun Flower",
                "Daffodil",
                "Daisy");

$flowers = array_diff($flowers, array("",0,null));
echo "The array is:\n";
print_r($flowers);
?>

Ici, nous avons comparé notre tableau avec un tableau qui contient la chaîne vide, 0 et la valeur nulle. Le tableau renvoyé n’a alors aucun élément vide.

Production:

The array is:
Array
(
    [0] => Rose
    [1] => Lili
    [3] => Jasmine
    [4] => Hibiscus
    [6] => Tulip
    [8] => Sun Flower
    [10] => Daffodil
    [11] => Daisy
)

Utiliser la fonction unset() pour supprimer les éléments de tableau vides en PHP

La fonction unset() supprime la valeur stockée dans une variable. Nous pouvons l’utiliser pour supprimer les éléments vides d’un tableau. La syntaxe correcte pour utiliser cette fonction est la suivante.

unset($variableName);

Il n’accepte qu’un seul paramètre $variableName. Le $variableName est une variable dont nous voulons supprimer la valeur.

<?php
//Declare the array
$flowers = array("Rose","Lili","","Jasmine","Hibiscus","Tulip","Sun Flower","","Daffodil","Daisy");
foreach($flowers as $key => $link) 
{ 
    if($link === '') 
    {
        unset($flowers[$key]); 
    } 
} 
echo "The array is:\n";
print_r($flowers);
?>

Ici, nous avons utilisé une boucle foreach pour trouver les éléments de tableau vides. Si un élément du tableau est vide, son index avec le nom du tableau est passé en paramètre à la fonction unset().

Production:

The array is:
Array
(
    [0] => Rose
    [1] => Lili
    [3] => Jasmine
    [4] => Hibiscus
    [5] => Tulip
    [6] => Sun Flower
    [8] => Daffodil
    [9] => Daisy
)

Article connexe - PHP Array