插件窝 干货文章 一维数组转二维数组 php

一维数组转二维数组 php

数组 一维 array 二维 252    来源:    2025-03-19

在 PHP 中,你可以使用 array_chunk 函数将一维数组转换为二维数组。array_chunk 函数可以将一个数组分割成多个大小相等的子数组。

示例代码

<?php
// 原始一维数组
$array = [1, 2, 3, 4, 5, 6, 7, 8, 9];

// 将一维数组转换为二维数组,每个子数组包含3个元素
$chunkedArray = array_chunk($array, 3);

// 输出结果
print_r($chunkedArray);
?>

输出结果

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

    [1] => Array
        (
            [0] => 4
            [1] => 5
            [2] => 6
        )

    [2] => Array
        (
            [0] => 7
            [1] => 8
            [2] => 9
        )
)

参数说明

  • array_chunk(array $array, int $size, bool $preserve_keys = false): array
    • $array: 要分割的数组。
    • $size: 每个子数组的大小。
    • $preserve_keys: 是否保留原始数组的键名。默认为 false,即重新索引键名。

注意事项

  • 如果原始数组的长度不能被 $size 整除,最后一个子数组的长度会小于 $size
  • 如果你希望保留原始数组的键名,可以将 $preserve_keys 参数设置为 true

示例:保留键名

<?php
// 原始一维数组
$array = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5];

// 将一维数组转换为二维数组,每个子数组包含2个元素,并保留键名
$chunkedArray = array_chunk($array, 2, true);

// 输出结果
print_r($chunkedArray);
?>

输出结果

Array
(
    [0] => Array
        (
            [a] => 1
            [b] => 2
        )

    [1] => Array
        (
            [c] => 3
            [d] => 4
        )

    [2] => Array
        (
            [e] => 5
        )
)

通过这种方式,你可以轻松地将一维数组转换为二维数组。