Maison  >  Article  >  développement back-end  >  Comment obtenir un tableau multidimensionnel en php

Comment obtenir un tableau multidimensionnel en php

王林
王林original
2023-05-11 09:38:07855parcourir

En programmation PHP, les tableaux multidimensionnels sont l'une des structures de données les plus courantes. Un tableau multidimensionnel signifie que chaque élément d'un tableau est également un tableau. Ce type de tableau est plus structuré qu'un tableau unidimensionnel. Lorsque nous opérons sur des tableaux multidimensionnels, nous devons savoir comment obtenir les valeurs. Cet article explique comment obtenir des tableaux multidimensionnels.

1. Opérations de base

Obtenir les valeurs​​dans un tableau à deux dimensions est très simple, il suffit d'utiliser des crochets et des indices comme un tableau à une dimension. Par exemple : $arr0, afin que vous puissiez obtenir la deuxième valeur du premier élément du tableau.

2. Parcours de boucle

Si le tableau multidimensionnel a plus de deux dimensions, alors l'utilisation des opérations de base deviendra extrêmement lourde. À ce stade, nous pouvons utiliser une boucle pour parcourir et obtenir facilement les valeurs dans le tableau multidimensionnel. Le code est implémenté comme suit :

foreach($arr as $key1=>$val1){
    foreach($val1 as $key2=>$val2){
        echo $arr[$key1][$key2];
    }
}

Comme vous pouvez le voir, nous obtenons l'indice et la valeur du tableau unidimensionnel dans la boucle externe, puis obtenons l'indice et la valeur du tableau bidimensionnel tableau après être entré dans la boucle interne. Ensuite, affichez-le.

3. Acquisition récursive

Si le tableau multidimensionnel a plusieurs dimensions, il sera très fastidieux d'utiliser le parcours de boucle. À l'heure actuelle, nous pouvons utiliser des fonctions récursives pour obtenir des valeurs dans des tableaux multidimensionnels.

La méthode d'implémentation de la fonction récursive consiste à déterminer si l'élément actuellement obtenu est un tableau, et si oui, continuer à obtenir de manière récursive jusqu'à ce que la valeur de la dernière dimension soit obtenue. L'exemple de code est le suivant :

function get_val($arr){
    foreach($arr as $val){
        if(is_array($val)){
            get_val($val);
        }else{
            echo $val;
        }
    }
}

Comme vous pouvez le voir, nous déterminons d'abord si la valeur actuellement obtenue est un tableau, et si c'est le cas, continuons à appeler la fonction récursive, et sinon, la produisons . De cette façon, quel que soit le nombre de dimensions du tableau, vous pouvez utiliser des fonctions récursives pour obtenir les valeurs qu'il contient.

4. Utiliser array_column

PHP fournit une fonction array_column qui peut nous aider à obtenir la colonne spécifiée dans un tableau multidimensionnel. La syntaxe de cette fonction est la suivante :

array_column($arr, $column_key [, $index_key]);

Parmi eux, le paramètre $arr est le tableau de valeurs à obtenir, le paramètre $column_key est l'indice de la colonne à obtenir, et le paramètre $index_key est l'indice du nouveau tableau. Si $index_key n'est pas spécifié, un index numérique commençant à 0 sera utilisé.

L'exemple de code est le suivant :

$arr = array(
    array('id'=>1, 'name'=>'Tom', 'age'=>18),
    array('id'=>2, 'name'=>'Jerry', 'age'=>20),
    array('id'=>3, 'name'=>'Lucy', 'age'=>22)
);
$name_arr = array_column($arr, 'name');

Dans le code ci-dessus, nous utilisons la fonction array_column pour obtenir la colonne 'name' dans le tableau $arr. Le tableau final $name_arr est la collection de tous les noms du tableau, où chaque élément est une chaîne correspondant à la valeur « nom » de chaque élément du tableau.

Résumé :

En PHP, obtenir des tableaux multidimensionnels est une opération très basique et importante. Grâce à l'introduction de cet article, nous pouvons connaître plusieurs méthodes d'acquisition telles que les opérations de base, le parcours de boucle, l'acquisition récursive, la fonction array_column, etc. Différentes méthodes d'acquisition conviennent à différents scénarios et peuvent être sélectionnées et utilisées en fonction de la situation réelle.

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