Maison >développement back-end >Problème PHP >Convertir un tableau unidimensionnel en tableau bidimensionnel php

Convertir un tableau unidimensionnel en tableau bidimensionnel php

WBOY
WBOYoriginal
2023-05-05 22:08:072412parcourir

Dans le développement PHP, nous avons souvent besoin de convertir des tableaux en tableaux bidimensionnels et en tableaux unidimensionnels. Cet article explique comment convertir des tableaux unidimensionnels en tableaux bidimensionnels.

Concepts de base des tableaux unidimensionnels et des tableaux bidimensionnels

En PHP, un tableau est une variable spéciale qui peut stocker plusieurs valeurs. Les tableaux unidimensionnels sont le type de tableau le plus simple, dans lequel chaque élément ne contient qu'une seule valeur. Un tableau bidimensionnel est une collection de données ordonnées qui contient plusieurs tableaux unidimensionnels.

Méthodes pour convertir un tableau unidimensionnel en tableau bidimensionnel

En PHP, il existe de nombreuses façons de convertir un tableau unidimensionnel en tableau bidimensionnel. Ci-dessous, nous présentons quelques méthodes couramment utilisées.

Méthode 1 : utiliser une boucle for

Ce qui suit est un exemple de conversion d'un tableau unidimensionnel en un tableau bidimensionnel :

<?php
$arr = ['a', 'b', 'c', 'd', 'e', 'f'];
$rows = 2;
$cols = 3;

$index = 0;
for ($i = 0; $i < $rows; $i++) {
    for ($j = 0; $j < $cols; $j++) {
        if (isset($arr[$index])) {
            $result[$i][$j] = $arr[$index];
            $index++;
        } else {
            break;
        }
    }
}
print_r($result);
?>

Dans le code, $arr est le tableau unidimensionnel qui doit être converti , et $rows et $cols représentent respectivement des tableaux bidimensionnels. Le nombre de lignes et de colonnes du tableau. Dans la boucle, nous attribuons les éléments du tableau unidimensionnel au tableau bidimensionnel en jugeant l'indice du tableau. Le résultat final est le tableau bidimensionnel converti.

Méthode 2 : utiliser la fonction array_chunk

La fonction intégrée PHP array_chunk peut diviser un tableau unidimensionnel en plusieurs blocs de tableau, puis renvoyer un nouveau tableau composé de ces blocs. Nous pouvons utiliser cette fonction pour convertir un tableau unidimensionnel en un tableau bidimensionnel. L'exemple de code est le suivant :

<?php
$arr = ['a', 'b', 'c', 'd', 'e', 'f'];
$cols = 3;

$result = array_chunk($arr, $cols);
print_r($result);
?>

Dans le code, $arr est le tableau unidimensionnel qui doit être converti et $cols est la longueur de chaque tableau bidimensionnel. Utilisez la fonction array_chunk pour convertir un tableau unidimensionnel en un tableau bidimensionnel et afficher le résultat converti.

Méthode 3 : utiliser la boucle foreach

Une autre façon de convertir un tableau unidimensionnel en un tableau bidimensionnel consiste à utiliser la boucle foreach de PHP. Un exemple est le suivant :

<?php
$arr = ['a', 'b', 'c', 'd', 'e', 'f'];
$rows = 2;
$cols = 3;

$index = 0;
foreach (range(1, $rows) as $i) {
    foreach (range(1, $cols) as $j) {
        if (isset($arr[$index])) {
            $result[$i][$j] = $arr[$index];
            $index++;
        } else {
            break;
        }
    }
}
print_r($result);
?>

Dans le code, nous créons un tableau via la fonction range pour représenter le nombre de lignes et de colonnes. Ensuite, nous attribuons la valeur du tableau unidimensionnel au tableau bidimensionnel en jugeant l'indice dans la boucle foreach. Le résultat final est le tableau bidimensionnel converti.

Méthode 4 : Utiliser les fonctions array_chunk et array_pad

Une autre façon d'utiliser les fonctions array_chunk et array_pad pour convertir un tableau unidimensionnel en un tableau bidimensionnel est la suivante :

<?php
$arr = ['a', 'b', 'c', 'd', 'e', 'f'];
$cols = 3;

$result = array_chunk($arr, $cols);
$last = count($result[count($result) - 1]);
if ($last < $cols) {
    $result[count($result) - 1] = array_pad($result[count($result) - 1], $cols, "");
}
print_r($result);
?>

Dans le code, nous utilisons d'abord le array_chunk pour diviser le tableau unidimensionnel en plusieurs blocs de tableau, puis utilisez la fonction array_pad pour remplir le dernier bloc de tableau avec des valeurs nulles. Cela permet de convertir un tableau unidimensionnel en un tableau bidimensionnel.

Résumé

Cet article présente quatre méthodes pour convertir des tableaux unidimensionnels en tableaux bidimensionnels. Dans le développement réel, nous pouvons choisir la méthode appropriée à utiliser en fonction de besoins spécifiques. Quelle que soit la méthode, nous pouvons réaliser la conversion de tableau via des boucles, des fonctions intégrées, etc.

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