Maison > développement back-end > Problème PHP > php supprime des éléments dans un tableau multidimensionnel

php supprime des éléments dans un tableau multidimensionnel

WBOY
Libérer: 2023-05-05 21:44:06
original
680 Les gens l'ont consulté

En développement PHP, il est souvent nécessaire de supprimer un élément dans un tableau multidimensionnel pour garantir l'intégrité et la standardisation des données. Cet article présentera plusieurs méthodes courantes pour supprimer des éléments dans des tableaux multidimensionnels.

1. Utilisez la fonction unset

La fonction unset est une méthode courante pour supprimer des variables en PHP. Elle peut également être utilisée pour supprimer des éléments dans des tableaux multidimensionnels.

Tout d'abord, nous devons déterminer la position de l'élément à supprimer. Cela peut être réalisé de deux manières :

(1) Utilisez l'indice

$arr = array(

'a' => array('b', 'c', 'd'),
'e' => array('f', 'g', 'h')
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

);

//Delete $. arr[ 'a'] Élément 'c' dans le tableau
unset($arr'a');

(2) Utilisez le nom de clé

$arr = array(

'a' => array('b', 'c', 'd'),
'e' => array('f', 'g', 'h')
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

);

//Delete $ arr du tableau L'élément 'e'
unset($arr['e']);

L'avantage d'utiliser la fonction unset est que le code est concis et facile à comprendre. L'inconvénient est que l'élément supprimé ne peut pas être supprimé. renvoyés et certains traitements ne peuvent être effectués.

2. Utilisez la fonction array_splice

La fonction array_splice est une fonction en PHP qui remplace et supprime des éléments d'un tableau. Avec cette fonction, nous pouvons facilement supprimer un ou plusieurs éléments d'un tableau multidimensionnel.

Identique à la fonction unset, nous devons d'abord déterminer la position de l'élément à supprimer :

$arr = array(

'a' => array('b', 'c', 'd'),
'e' => array('f', 'g', 'h')
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

);

//Supprimer l'élément 'c' dans le $arr[' a'] tableau
array_splice ($arr['a'], 1, 1);

//Supprimer l'élément 'e' dans le tableau $arr
array_splice($arr, 1, 1);

L'avantage L'avantage d'utiliser la fonction array_splice est qu'elle peut renvoyer des éléments supprimés et que certaines opérations de traitement peuvent être effectuées. L'inconvénient est que le code est relativement compliqué.

3. Utilisez la fonction array_filter

La fonction array_filter peut filtrer les éléments du tableau en fonction de la fonction de rappel spécifiée. Nous pouvons utiliser cette fonction pour supprimer des éléments du tableau multidimensionnel.

$arr = array(

'a' => array('b', 'c', 'd'),
'e' => array('f', 'g', 'h')
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

);

//Supprimer l'élément 'c' dans le tableau $arr['a']
$arr['a'] = array_filter($arr['a'] , function($value, $key) {

return $value != 'c';
Copier après la connexion

}, ARRAY_FILTER_USE_BOTH);

//Supprimez l'élément 'e' dans le tableau $arr
$arr = array_filter($arr, function($value, $key) {

return $key != 'e';
Copier après la connexion

}, ARRAY_FILTER_USE_BOTH);

L'avantage d'utiliser la fonction array_filter est qu'elle prend en charge les fonctions de rappel et peut effectuer certaines opérations logiques complexes. L'inconvénient est que le code est lourd et difficile à comprendre.

4. Utiliser des fonctions récursives

Pour l'opération de suppression de tableaux multidimensionnels, nous pouvons également utiliser des fonctions récursives pour supprimer.

function array_delete(&$array, $key) {

foreach($array as $k => &$v) {
    if($k === $key) {
        unset($array[$k]);
    }
    elseif(is_array($v)) {
        array_delete($v, $key);
    }
}
Copier après la connexion

}

L'avantage de l'utilisation de la fonction récursive est qu'elle est simple et facile à mettre en œuvre et que la logique est claire. L'inconvénient est qu'elle ne peut pas prendre en charge le retour de. éléments supprimés.

Pour résumer, il existe de nombreuses façons de supprimer des éléments dans des tableaux multidimensionnels en PHP. Dans le développement réel, vous pouvez choisir en fonction de vos besoins pour obtenir les meilleures performances et effets.

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