Comment supprimer des éléments d'un tableau en php (5 méthodes)

PHPz
Libérer: 2023-04-12 10:38:52
original
9105 Les gens l'ont consulté

En PHP, nous avons souvent besoin de supprimer certains éléments d'un tableau pour répondre à des besoins réels. Alors, comment supprimer des éléments du tableau ? Cet article couvrira quelques méthodes différentes.

1. Utilisez la fonction unset()

La fonction unset() peut détruire la variable spécifiée et ainsi supprimer des éléments du tableau. Par exemple, nous avons le tableau suivant :

$arr = array('a', 'b', 'c', 'd', 'e');
Copier après la connexion

Si nous voulons supprimer le troisième élément du tableau (c'est-à-dire l'élément d'index 2), nous pouvons utiliser la fonction unset() :

unset($arr[2]);
Copier après la connexion

De cette façon, l'élément «c» du tableau a été supprimé. Vous pouvez également supprimer plusieurs éléments, par exemple :

unset($arr[1], $arr[3]);
Copier après la connexion

Cela supprimera les deuxième et quatrième éléments du tableau (éléments d'index 1 et 3). Il convient de noter que l'utilisation de la fonction unset() supprime uniquement les éléments du tableau, mais ne réorganise pas les valeurs clés du tableau, donc des trous seront laissés dans le tableau. Si vous devez réindexer le tableau, vous pouvez utiliser la fonction array_values(), par exemple :

$arr = array_values($arr);
Copier après la connexion

2. Utilisez la fonction array_splice()

La fonction array_splice() peut supprimer des éléments dans le tableau et remplacer les éléments supprimés. . La syntaxe de cette fonction est la suivante :

array_splice(array &$input, int $offset [, int $length = count($input)], mixed $replacement = [])
Copier après la connexion

où $input est le tableau sur lequel opérer ; $offset est l'index du premier élément à supprimer (ou remplacer) (s'il est négatif, il est calculé à partir du fin du tableau) ; $length est le nombre d'éléments à supprimer (s'il n'est pas spécifié, tous les éléments de $offset jusqu'à la fin du tableau sont supprimés) ;

L'exemple de code est le suivant :

$arr = array('a', 'b', 'c', 'd', 'e');
array_splice($arr, 2, 1);
Copier après la connexion

De cette façon, l'élément 'c' du tableau est supprimé. Si vous souhaitez supprimer plusieurs éléments, vous pouvez définir $length sur le nombre d'éléments que vous souhaitez supprimer, par exemple :

array_splice($arr, 1, 2);
Copier après la connexion

De cette façon, les deuxième et troisième éléments du tableau sont supprimés. Si vous souhaitez remplacer l'élément supprimé, vous pouvez définir le paramètre $replacement sur la valeur que vous souhaitez remplacer, par exemple :

array_splice($arr, 1, 2, array('x', 'y', 'z'));
Copier après la connexion

De cette façon, les deuxième et troisième éléments du tableau sont remplacés par 'x', ' y' et 'z'.

3. Utilisez la fonction array_diff()

La fonction array_diff() peut renvoyer la différence de deux tableaux ou plus. Nous pouvons placer les éléments que nous voulons supprimer dans un nouveau tableau, puis utiliser la fonction array_diff() pour supprimer les éléments. L'exemple de code est le suivant :

$arr = array('a', 'b', 'c', 'd', 'e');
$remove = array('c', 'd');
$result = array_diff($arr, $remove);
Copier après la connexion

De cette façon, seuls "a", "b" et "e" sont laissés dans le tableau $result. Il est important de noter que la fonction array_diff() compare les valeurs dans les deux tableaux, pas les clés, donc s'il y a des valeurs identiques dans les tableaux, une seule valeur sera retenue.

4. Utilisez la fonction array_filter()

La fonction array_filter() peut filtrer les éléments du tableau selon des conditions spécifiées. Nous pouvons utiliser cette fonction pour supprimer certains éléments d'un tableau. L'exemple de code est le suivant :

$arr = array('a', 'b', 'c', 'd', 'e');
$new_arr = array_filter($arr, function($value) {
    return $value != 'c' && $value != 'd';
});
Copier après la connexion

Une fonction anonyme est utilisée ici comme fonction de rappel, qui renvoie tous les éléments qui ne sont pas égaux à "c" et "d". Cela ne laisse que « a », « b » et « e » dans le tableau $new_arr.

5. Utilisez la fonction unset() combinée avec une boucle

La dernière méthode consiste à utiliser la fonction unset() combinée avec une boucle pour supprimer des éléments du tableau. L'opération spécifique est la suivante : parcourir le tableau, rechercher l'élément à supprimer, puis utiliser la fonction unset() pour le supprimer. L'exemple de code est le suivant :

$arr = array('a', 'b', 'c', 'd', 'e');
foreach ($arr as $key => $value) {
    if ($value == 'c' || $value == 'd') {
        unset($arr[$key]);
    }
}
Copier après la connexion

De cette façon, les éléments 'c' et 'd' du tableau sont supprimés. Il convient de noter que lorsque vous utilisez la fonction unset() pour supprimer un élément du tableau, la valeur clé du tableau sera modifiée. Par conséquent, vous devez utiliser le passage de référence lors du parcours du tableau. Si vous devez réindexer un tableau, vous pouvez utiliser la fonction array_values().

Résumé

Cet article a présenté plusieurs méthodes différentes qui peuvent être utilisées pour supprimer des éléments des tableaux PHP. Différentes méthodes conviennent à différents scénarios. Choisir la méthode appropriée peut répondre plus efficacement aux exigences. Si vous avez d’autres bonnes méthodes, n’hésitez pas à laisser un message dans la zone commentaire pour les partager !

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!