可以使用 array_reduce()
函数将二维数组转换为一维数组。array_reduce()
函数将通过一个回调函数迭代数组中的所有值,并将它们合并为一个单一的值。在这种情况下,我们将使用 array_merge()
函数将所有子数组合并为一个单一的数组。
示例代码如下:
function flatten_array($arr) {
return array_reduce($arr, function($carry, $item) {
return array_merge($carry, is_array($item) ? flatten_array($item) : array($item));
}, array());
}
// 测试
$arr = array(
array(1, 2, 3),
array(4, 5, 6),
array(
array(7, 8),
9,
array(10, 11, 12),
),
);
$result = flatten_array($arr);
print_r($result);
// 输出:
// Array
// (
// [0] => 1
// [1] => 2
// [2] => 3
// [3] => 4
// [4] => 5
// [5] => 6
// [6] => 7
// [7] => 8
// [8] => 9
// [9] => 10
// [10] => 11
// [11] => 12
// )
在上面的示例代码中,我们定义了一个 flatten_array()
函数,该函数使用 array_reduce()
函数和递归调用来将二维数组转换为一维数组。
评论 (0)