You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP中如何遍历二维嵌套数组并合并生成单个数组?

实现方案

你之前的代码仅遍历了最外层的2个一级子数组,没有进入子数组内部遍历用户数据,因此无法得到9个元素的一维数组,可通过以下两种方案实现需求:

方案1:嵌套循环(兼容性最好,支持任意数量的子数组)

直接遍历外层数组的每个子数组,再将子数组内的用户元素逐个存入新数组即可:

$newArray = [];
foreach ($unidades as $subGroup) {
    foreach ($subGroup as $userItem) {
        // 直接追加元素,新数组会自动生成连续数字索引
        $newArray[] = $userItem;
    }
}

如果需要保留原数组中用户对应的数字键(即1-9的索引),可以调整为:

$newArray = [];
foreach ($unidades as $subGroup) {
    foreach ($subGroup as $key => $userItem) {
        $newArray[$key] = $userItem;
    }
}

方案2:内置函数实现(PHP 7.4+ 支持,代码更简洁)

用数组展开运算符+array_merge直接合并所有子数组:

$newArray = array_merge(...array_values($unidades));

该写法会自动将所有子数组的元素合并为一个新的一维数组,数字索引会自动重置为从0开始的连续值。

执行以上任意方案后,$newArray就是包含9个用户数据的单层级数组,直接遍历该数组即可处理所有用户的欠付金额数据。


内容的提问来源于stack exchange,提问作者Rosamunda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 19:06:05