Maison  >  Article  >  développement back-end  >  Comment changer les éléments sous un tableau multidimensionnel en php

Comment changer les éléments sous un tableau multidimensionnel en php

PHPz
PHPzoriginal
2023-04-27 09:05:17590parcourir

PHP est un langage de programmation Web très populaire, apprécié pour sa large gamme d'applications. Les tableaux sont un type de données très utile en PHP. Il existe de nombreux types de tableaux en PHP, les plus couramment utilisés étant les tableaux multidimensionnels. Dans un tableau multidimensionnel, chaque élément du tableau peut être un tableau, formant ainsi une structure de tableau bidimensionnelle, tridimensionnelle ou de dimension supérieure. Cependant, lorsqu’il s’agit de tableaux multidimensionnels, la modification d’éléments spécifiques peut s’avérer un peu délicate. Cet article explique comment modifier des éléments dans un tableau multidimensionnel.

Parcours de tableaux multidimensionnels

Avant de comprendre comment modifier les éléments d'un tableau multidimensionnel, nous devons comprendre comment parcourir des tableaux multidimensionnels en PHP. Il existe de nombreuses façons de parcourir des tableaux multidimensionnels. Nous présenterons ci-dessous les trois méthodes les plus courantes.

Méthode 1 : utilisez la boucle for pour parcourir

Utilisez la boucle for pour parcourir facilement un tableau à deux dimensions. Pour les tableaux tridimensionnels, quadridimensionnels ou de dimensions supérieures, plusieurs boucles for doivent être imbriquées. Comme indiqué ci-dessous :

$array = array(
    array(1, 2, 3),
    array(4, 5, 6),
    array(7, 8, 9)
);

for ($i = 0; $i < 3; $i++) {
    for ($j = 0; $j < 3; $j++) {
        echo $array[$i][$j] . " ";
    }
    echo "<br>";
}

Le résultat de sortie est :

1 2 3 
4 5 6 
7 8 9

Méthode 2 : Utilisez la boucle foreach pour parcourir

Utilisez la boucle foreach pour parcourir des tableaux de n'importe quelle dimension, comme indiqué ci-dessous :

$array = array(
    array(1, 2, 3),
    array(4, 5, 6),
    array(7, 8, 9)
);

foreach ($array as $value1) {
    foreach ($value1 as $value2) {
        echo $value2 . " ";
    }
    echo "<br>";
}

Le résultat de sortie est :

1 2 3 
4 5 6 
7 8 9

Méthode 3 : Utiliser le parcours récursif

L'utilisation de la méthode récursive peut parcourir des tableaux de n'importe quelle dimension, comme indiqué ci-dessous :

$array = array(
    array(1, 2, 3),
    array(4, 5, 6),
    array(7, 8, 9)
);

function traverse($array) {
    foreach ($array as $value) {
        if (is_array($value)) {
            traverse($value);
        } else {
            echo $value . " ";
        }
    }
    echo "<br>";
}

traverse($array);

Les résultats de sortie sont les mêmes que ceux des deux premières méthodes :

1 2 3 
4 5 6 
7 8 9

Modifier les éléments du tableau multidimensionnel

Une fois que vous savez comment parcourir le tableau multidimensionnel, modifier les éléments du tableau est encore plus facile. En PHP, on peut utiliser l'indice d'un tableau pour modifier la valeur d'un élément. Ci-dessous, nous présenterons respectivement les méthodes de modification des éléments dans les tableaux bidimensionnels et tridimensionnels.

Modifier des éléments dans un tableau bidimensionnel

Modifier des éléments dans un tableau bidimensionnel est très simple. Il suffit de mettre à jour la valeur de l'élément en utilisant l'indice du tableau comme suit :

$array = array(
    array(1, 2, 3),
    array(4, 5, 6),
    array(7, 8, 9)
);

$array[1][1] = 10;

for ($i = 0; $i < 3; $i++) {
    for ($j = 0; $j < 3; $j++) {
        echo $array[$i][$j] . " ";
    }
    echo "<br>";
}

Le résultat est :

1 2 3 
4 10 6 
7 8 9

Dans l'exemple ci-dessus, nous utilisons $array[1][1] = 10; Met à jour les éléments d'un tableau à deux dimensions. Nous utilisons ensuite une boucle for pour vérifier que l'élément a été mis à jour. $array[1][1] = 10; 更新了二维数组中的元素。然后,我们使用 for 循环来验证元素是否已被更新。

三维数组下修改元素

在三维数组下修改元素稍微复杂一些。我们需要使用多次数组下标来访问数组中的元素。如下所示:

$array = array(
    array(
        array(1, 2, 3),
        array(4, 5, 6),
        array(7, 8, 9)
    ),
    array(
        array(10, 11, 12),
        array(13, 14, 15),
        array(16, 17, 18)
    )
);

$array[1][1][1] = 20;

function traverse($array) {
    foreach ($array as $value) {
        if (is_array($value)) {
            traverse($value);
        } else {
            echo $value . " ";
        }
    }
    echo "<br>";
}

traverse($array);

输出结果为:

1 2 3 
4 5 6 
7 8 9 
10 11 12 
13 20 15 
16 17 18

在上面的示例中,我们使用 $array[1][1][1] = 20; 更新了三维数组中的元素。由于遍历三维数组时需要使用递归,因此我们使用了 traverse

Modifier des éléments dans un tableau tridimensionnel

Modifier des éléments dans un tableau tridimensionnel est un peu plus compliqué. Nous devons utiliser plusieurs indices de tableau pour accéder aux éléments du tableau. Comme indiqué ci-dessous :

rrreee

Le résultat est : 🎜rrreee🎜Dans l'exemple ci-dessus, nous utilisons $array[1][1][1] = 20; pour mettre à jour les éléments dans les trois tableau dimensionnel. Puisque la récursivité est requise lors du parcours d'un tableau tridimensionnel, nous utilisons la fonction traverse pour parcourir l'intégralité du tableau. 🎜🎜Résumé🎜🎜Dans cet article, nous avons présenté comment modifier des éléments dans un tableau multidimensionnel à l'aide de PHP. Nous avons découvert trois façons de travailler avec des tableaux multidimensionnels et fourni des exemples de tableaux à deux et trois dimensions qui montrent comment utiliser les indices de tableau pour accéder et mettre à jour les éléments du tableau. De cette façon, tout le monde peut utiliser PHP de manière plus flexible pour traiter des structures de tableaux multidimensionnels complexes. 🎜

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