Comment supprimer un élément d'un tableau en PHP

  1. Utiliser la fonction unset() pour supprimer un élément d’un tableau en PHP
  2. Utilisation de la fonction array_splice() pour supprimer un élément d’un tableau en PHP
  3. Utiliser la fonction array_diff() pour supprimer un élément d’un tableau en PHP

Dans cet article, nous allons introduire des méthodes pour supprimer un élément d’un tableau en PHP.

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

Utiliser la fonction unset() pour supprimer un élément d’un tableau en PHP

La fonction intégrée unset() est utilisée pour supprimer la valeur stockée dans une variable. Elle ne s’applique qu’aux variables locales. Il ne reflète pas son comportement sur les variables globales. Nous pouvons utiliser cette fonction pour supprimer un élément d’un tableau. La syntaxe correcte pour utiliser cette fonction est la suivante

unset($variableName);

Il a un seul paramètre obligatoire. La variable dont nous souhaitons supprimer la valeur est passée en paramètre à cette fonction.

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

unset($flowers[1]);
echo "The array is:\n";
print_r($flowers);
?>

Cette fonction peut supprimer une valeur à la fois. Le nom du tableau avec l’index de l’élément ($flowers[1]) est passé en paramètre. Cette fonction ne modifie pas les valeurs d’index. Les valeurs d’index restent les mêmes qu’avant.

Production:

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

Comme vous pouvez le voir, l’index 1 est manquant après l’application de la fonction unset.

Utilisation de la fonction array_splice() pour supprimer un élément d’un tableau en PHP

La fonction array_splice() est utilisée pour ajouter des éléments à un tableau ou supprimer des éléments d’un tableau. La syntaxe correcte pour utiliser cette fonction est la suivante

array_splice($arrayName, $startingIndex, $numOfElements, $array2Name);

Il a quatre paramètres.

  1. $arrayName est un paramètre obligatoire. C’est le tableau dont les éléments seront supprimés.
  2. $startingIndex est l’index de l’élément que nous souhaitons supprimer.
  3. $numOfElements est le nombre d’éléments que nous voulons supprimer de l’index de départ.
  4. $array2Name est untableau d’éléments que nous voulons ajouter.

$numOfElements et $array2Name sont facultatifs.

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

array_splice($flowers, 4, 3);
echo "The array is:\n";
print_r($flowers);
?>

Le tableau $flowers est passé en paramètre à cette fonction avec l’index de départ 4 et le nombre d’éléments que nous voulons supprimer-3. De cette façon, nous pouvons supprimer plusieurs éléments d’un tableau.

Production:

The array is:
Array
(
    [0] => Rose
    [1] => Lili
    [2] => Jasmine
    [3] => Hibiscus
    [4] => Daisy
)
Remarque

Différente de unset, la fonctionarray_splice réindexera automatiquement les clés.

Daisy a le nouvel index comme 4 mais pas l’index d’origine - 7, après avoir supprimé trois éléments avant lui.

Utiliser la fonction array_diff() pour supprimer un élément d’un tableau en PHP

La fonction intégrée array_diff() trouve la différence entre deux ou plusieurs tableaux. Il peut être utilisé pour supprimer plusieurs valeurs d’un tableau sans affecter leurs index. La syntaxe correcte pour utiliser cette fonction est la suivante

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

Il prend N nombre de tableaux comme paramètres. Il compare le premier tableau avec tous les autres tableaux et 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",
                "Hibiscus",
                "Tulip",
                "Sun Flower",
                "Daffodil",
                "Daisy");

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

Ici, le premier tableau que nous avons passé est $flowers et le second tableau contient les éléments que nous voulons supprimer de$ flowers. Cette fonction ne modifie pas les index des éléments du tableau.

Production:

The array is:
Array
(
    [2] => Jasmine
    [3] => Hibiscus
    [4] => Tulip
    [5] => Sun Flower
    [6] => Daffodil
    [7] => Daisy
)

Article connexe - PHP Array

  • Comment réinitialiser le tableau en PHP
  • Comment convertir un tableau en objet en PHP