这段PHP代码有什么问题(二维数组)


What's wrong with this PHP code (two dimensional array)?

一段时间后,我得到以下警告:

注意:第8行

未定义offset: 3 in(…)
<?php
$arrnumbers = array(1=>array(10,20,30),2=>array(40,50,60));
for($indexRow =1; $indexRow <=count($arrnumbers); ++$indexRow)
{
    for($indexColumn =0; $indexCoulumn <count($arrnumbers[$indexRow]);++$indexColumn)
    {
    printf("%d ", $arrnumbers[$indexRow][$indexColumn]);
    }
print("<BR>");
}
?>

提前感谢!

正如我对你的问题的评论,我建议使用foreach -循环来处理数组,它更干净,更简单。

下面的代码首先循环遍历第一个子数组并输出它,然后对第二个子数组执行换行,并对第二个子数组执行相同的操作。输出将是

10 20 30
40 50 60

<?php
$arrnumbers = array(1=>array(10,20,30),2=>array(40,50,60));
foreach ($arrnumbers as $val) {
    foreach ($val as $key=>$value) {
        printf("%d ", $value);
    }
    print("<br />");
}
?>

您可以在PHP.net上阅读foreach -loops的完整文档