Maison  >  Article  >  développement back-end  >  Comment convertir un tableau à deux dimensions en un tableau à une dimension en php

Comment convertir un tableau à deux dimensions en un tableau à une dimension en php

PHPz
PHPzoriginal
2023-04-23 10:23:24851parcourir

En PHP, le tableau est un type de données très courant et important. Les tableaux peuvent être divisés en formes unidimensionnelles, bidimensionnelles et multidimensionnelles. Dans cet article, nous apprendrons comment convertir un tableau 2D en tableau 1D.

Tableau unidimensionnel et tableau bidimensionnel

En PHP, un tableau unidimensionnel est un tableau avec une seule dimension. Les éléments peuvent être n'importe quel type de données, comme des nombres, des chaînes, des objets, etc.

Par exemple :

$array1 = array("dog", "cat", "horse", "cow");

Ce tableau contient 4 éléments, chaque élément est une donnée de type chaîne.

Un tableau bidimensionnel fait référence à un tableau contenant deux dimensions. Les éléments les plus internes du tableau doivent être du même type de données.

Par exemple :

$array2 = array(
   array("dog", "puppy"),
   array("cat", "kitten"),
   array("horse", "foal"),
   array("cow", "calf")
);

Ce tableau bidimensionnel contient 4 éléments, chaque élément est un sous-tableau contenant 2 éléments. Chaque sous-tableau contient un type de chaîne et un élément de type chaîne.

Comment convertir un tableau bidimensionnel en un tableau unidimensionnel

Lorsque nous devons traiter des données, nous devons souvent convertir un tableau bidimensionnel en un tableau unidimensionnel. PHP fournit une variété de méthodes pour accomplir cette tâche. Voici trois méthodes :

Méthode 1 : Utilisez la boucle "foreach" pour parcourir

Tout d'abord, nous pouvons utiliser la boucle foreach pour parcourir les éléments du tableau à deux dimensions. , puis chaque élément Insérer dans un nouveau tableau unidimensionnel.

Voici l'exemple de code :

$array2 = array(
   array("dog", "puppy"),
   array("cat", "kitten"),
   array("horse", "foal"),
   array("cow", "calf")
);

//创建一个新的一维数组
$array1 = array();

//遍历二维数组并插入一维数组中
foreach($array2 as $value) {
   foreach($value as $element) {
      array_push($array1, $element);
   }
}

//打印结果
print_r($array1);

Dans le code ci-dessus, nous avons utilisé deux boucles foreach pour parcourir les éléments du tableau bidimensionnel et insérer chaque élément dans le tableau. Le résultat final imprimé est un tableau unidimensionnel.

Méthode 2 : utilisez la fonction "array_reduce()"

Une autre méthode consiste à utiliser la fonction "array_reduce()" de PHP, qui peut également convertir un tableau à deux dimensions en un tableau à une dimension.

Ce qui suit est un exemple de code :

$array2 = array(
   array("dog", "puppy"),
   array("cat", "kitten"),
   array("horse", "foal"),
   array("cow", "calf")
);

//调用array_reduce()函数
$array1 = array_reduce($array2, 'array_merge', array());

//打印结果
print_r($array1);

Dans le code ci-dessus, nous utilisons la fonction "array_reduce()" de PHP et lui passons trois paramètres : $array2 représente le tableau bidimensionnel qui doit être converti, et 'array_merge' représente Une fonction de rappel utilisée pour insérer chaque sous-tableau dans un tableau unidimensionnel array() représente un tableau unidimensionnel avec une valeur initiale vide. Le résultat renvoyé par la fonction est un tableau converti en tableau unidimensionnel.

Méthode 3 : utilisez la fonction "array_walk_recursive()"

La dernière méthode consiste à utiliser la fonction "array_walk_recursive()", qui peut nous aider à parcourir tous les éléments du tableau bidimensionnel, puis à insérer chaque élément dans un nouveau dans un tableau unidimensionnel.

Voici un exemple de code :

$array2 = array(
   array("dog", "puppy"),
   array("cat", "kitten"),
   array("horse", "foal"),
   array("cow", "calf")
);

//创建一个新的一维数组
$array1 = array();

//调用array_walk_recursive()函数
function convert($value, $key, &$array1) {
   array_push($array1, $value);
}
array_walk_recursive($array2, 'convert', $array1);

//打印结果
print_r($array1);

Dans le code ci-dessus, nous créons d'abord un tableau vide comme tableau unidimensionnel cible, puis appelons la fonction "array_walk_recursive()" pour parcourir le tableau à deux dimensions. Le premier paramètre de la fonction représente le tableau qui doit être parcouru, le deuxième paramètre est une fonction de rappel, qui est utilisée pour insérer chaque élément parcouru dans le tableau unidimensionnel, et le troisième paramètre est le tableau unidimensionnel cible. La valeur de retour de la fonction est nulle, il n'est donc pas nécessaire d'attribuer le résultat renvoyé à une variable.

Résumé

Grâce aux trois méthodes ci-dessus, nous pouvons convertir plus facilement un tableau bidimensionnel en un tableau unidimensionnel. On peut voir qu'en PHP, le tableau est un type de données très couramment utilisé et qu'il est très important de maîtriser les compétences pertinentes.

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