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

PHP中如何通过嵌套循环完成二维数组的赋值操作

PHP 嵌套循环赋值二维数组实现

你提供的伪代码存在缩进歧义,我们分别按两种常见场景给出实现方案:

场景1:常规二维数组全量赋值(修正伪代码缩进错误的合理场景)

该场景下i自增属于外层循环,j自增属于内层循环,最终生成6行11列的完整二维数组,代码如下:

<?php
// 初始化空数组
$myarray = [];
$k = 50;
// 外层循环控制第一维下标i,范围0~5
for ($i = 0; $i <= 5; $i++) {
    // 每次进入内层循环前重置第二维下标j为0
    for ($j = 0; $j <= 10; $j++) {
        $myarray[$i][$j] = $k;
        // 赋值完成后k自增2
        $k += 2;
    }
}

// 验证输出结果
var_dump($myarray);
?>

该实现的输出特征:

  • 第一维下标范围为0~5,共6个元素
  • 每个第一维元素对应第二维下标范围为0~10,共11个元素
  • 所有元素值从50开始依次递增2,无空缺

场景2:严格遵循贴出的伪代码执行逻辑

若你贴的伪代码缩进完全正确,i和j的自增都放在内层循环中,代码实现如下:

<?php
$myarray = [];
$i = 0;
$j = 0;
$k = 50;

while ($i <= 5) {
    while ($j <= 10) {
        $myarray[$i][$j] = $k;
        $i++;
        $j++;
        $k += 2;
    }
}

var_dump($myarray);
?>

该实现的注意点:

  • 因i和j同步自增,当j增长到11退出内层循环时,i已经增长到11,不满足外层$i <=5的判断条件,外层循环仅会执行1次
  • 最终仅$myarray[0][0]到$myarray[5][5]共6个元素的赋值是在外层循环约束范围内完成的,剩余$myarray[6][6]到$myarray[10][10]的赋值不属于外层循环的控制范围

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 16:06:00