Maison >développement back-end >Problème PHP >Comment supprimer des éléments d'un tableau en php

Comment supprimer des éléments d'un tableau en php

王林
王林original
2021-05-12 15:52:023643parcourir

La façon dont PHP supprime des éléments d'un tableau consiste à utiliser la fonction unset pour supprimer des éléments du tableau, tels que [unset($array[index]);]. Une fois l'élément supprimé, l'index d'origine reste inchangé. .

Comment supprimer des éléments d'un tableau en php

L'environnement d'exploitation de cet article : système Windows10, php 7.3, ordinateur thinkpad t480.

Nous pouvons supprimer des éléments du tableau via les quatre méthodes indiquées ci-dessous. Veuillez consulter le code ci-dessous pour plus de détails.

Supprimer un élément et conserver l'index d'origine inchangé

Vous pouvez utiliser la fonction unset, l'exemple est le suivant :

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  unset($array[1]);
        //↑ 你想删除的key
?>

Sortie :

Array (
    [0] => a
    [2] => c
)

Vous pouvez également utiliser unset sans modifier l'index d'origine du tableau. Si vous envisagez de réorganiser l'index (pour que l'index commence à 0 et soit continu), vous pouvez utiliser la fonction array_values :

$array = array_values($array);
/*

Output

array(2) {
 [0]=>
 string(1) "a"
 [1]=>
 string(1) "c"
}
*/

Supprimer un élément sans conserver le index

Vous pouvez utiliser la fonction array_splice, l'exemple est le suivant :

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  array_splice($array, 1, 1);
            //↑ 你想删除的元素的Offset
?>

Sortie :

Array (
    [0] => a
    [1] => c
)

Supprimer plusieurs éléments par valeur, en conservant le index

Vous pouvez également utiliser la fonction array_diff, Exemple :

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  $array = array_diff($array, ["a", "c"]);
               //└────────┘→ 你想删除的数组元素值values
?>

Sortie :

Array (
    [1] => b
)

Similaire à unset, array_diff conservera également l'index.

Supprimer plusieurs éléments par clé, en gardant l'index

Utilisez la fonction array_diff_key, l'exemple est le suivant :

<?php
 
  $array = array(0 => "a", 1 => "b", 2 => "c");
  $array = array_diff_key($array, [0 => "xy", "2" => "xy"]);
                  //↑      ↑ 你想删除的数组键keys
?>

Sortie :

Array (
    [1] => b
)

Similaire à non défini, array_diff_key conservera également l'index.

Partage de vidéos d'apprentissage gratuit : Introduction à la programmation

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