Maison  >  Article  >  développement back-end  >  Comment supprimer une ligne d'un tableau à deux dimensions en php

Comment supprimer une ligne d'un tableau à deux dimensions en php

PHPz
PHPzoriginal
2023-04-26 10:21:04769parcourir

En PHP, un tableau bidimensionnel est un type de données courant. Il contient plusieurs éléments et chaque élément contient plusieurs paires clé-valeur. Dans certains cas, nous devons supprimer des lignes spécifiques d'un tableau à deux dimensions. Dans ce cas, nous pouvons utiliser certaines fonctions et syntaxes intégrées de PHP pour y parvenir. Cet article explique comment supprimer une ligne d'un tableau à deux dimensions à l'aide de PHP.

Tout d’abord, nous devons comprendre la structure de base d’un tableau bidimensionnel. Un simple tableau bidimensionnel peut être écrit sous la forme suivante :

$array = array(
     array("name" => "Tom", "age" => 20),
     array("name" => "Jane", "age" => 25),
     array("name" => "Peter", "age" => 30)
);

Dans l'exemple ci-dessus, le tableau $array contient trois éléments, chaque élément est un tableau contenant deux paires clé-valeur "nom" et "âge". Maintenant, nous voulons supprimer l'une des lignes, par exemple la deuxième ligne, qui est le tableau contenant "Jane" et "25". Nous pouvons utiliser la syntaxe suivante :

unset($array[1]);

Cette instruction supprimera la deuxième ligne du Les éléments du tableau $array sont supprimés du tableau. Bien sûr, si nous voulons supprimer un autre élément, il suffit d'utiliser la valeur d'index numérique (indice) de l'élément comme paramètre de la fonction unset().

La méthode ci-dessus est valable pour les tableaux bidimensionnels avec uniquement des index numériques, mais si le tableau bidimensionnel est indexé avec des chaînes, la suppression de lignes doit s'effectuer en fonction de la valeur de l'index de la chaîne. Par exemple, si la structure du tableau bidimensionnel est comme ceci :

$array = array(
     "Tom" => array("age" => 20),
     "Jane" => array("age" => 25),
     "Peter" => array("age" => 30)
);

, vous devez utiliser la fonction unset() pour supprimer des éléments, ce qui est différent de la manière de supprimer à l'aide d'index numériques ci-dessus. Comme suit :

unset($array["Jane"]);

Cette instruction supprimera l'élément portant le nom de clé "Jane" du tableau.

En plus d'utiliser la fonction unset() pour supprimer directement des lignes, vous pouvez également utiliser la fonction array_splice() pour "creuser" une ligne du tableau, puis la supprimer. Comme suit :

$index = array_search("Jane", array_column($array, "name")); //获取包含"Jane"的数组元素下标
array_splice($array, $index, 1); //从数组中删除该元素

Cette instruction utilise d'abord la fonction array_column() pour obtenir les valeurs correspondant à toutes les clés "name" du tableau $array, puis utilise la fonction array_search() pour obtenir la valeur d'indice du tableau élément. Enfin, utilisez la fonction array_splice() pour supprimer l'élément contenant "Jane" du tableau.

De plus, si la ligne à supprimer n'est pas un seul élément, mais un lot d'éléments, vous pouvez utiliser foreach pour parcourir le tableau et supprimer toutes les lignes qui remplissent les conditions. Comme suit :

foreach ($array as $key => $value) {
     if ($value["name"] == "Peter") {
          unset($array[$key]);
     }
}

Cette instruction détecte tous les éléments du tableau dont la valeur de clé "name" est égale à "Peter", puis utilise la fonction unset() pour les supprimer de $array.

En plus des méthodes ci-dessus, vous pouvez également utiliser une variété d'autres fonctions intégrées ou fonctions personnalisées pour opérer sur des tableaux bidimensionnels afin de supprimer des lignes spécifiques. En bref, les opérations sur les tableaux de PHP sont relativement flexibles et fournissent une variété de méthodes, qui peuvent être sélectionnées en fonction de besoins spécifiques.

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