如何把下段代码中使$a_key的值可以从零开始
foreach ($a as $a_key => $a_val)
{
foreach ($a_val as $b_key => $b_val)
{
switch ($b_key) //控制等号对齐并输出结果
{
case '10' :
echo'$result['.$a_key.']['.$b_key."]&nbsp &nbsp &nbsp &nbsp&nbsp= &nbsp &nbsp &nbsp &nbsp &nbsp'".$b_val."';";
break;

case '11' :
echo'$result['.$a_key.']['.$b_key."]&nbsp &nbsp &nbsp &nbsp&nbsp= &nbsp &nbsp &nbsp &nbsp &nbsp'".$b_val."';";
break;

default :
echo '$result['.$a_key.']['.$b_key."]&nbsp &nbsp &nbsp &nbsp &nbsp= &nbsp &nbsp &nbsp &nbsp &nbsp'".$b_val."';";
}
echo '<br>';
}

echo "<br>";
}

解决方案 »

  1.   

    1.$a里面的key没有0的话,$a_key根本无法从0开始
    2.也可以用for语句,但是用foreach是最安全的
    3.switch下面的可以直接用$a["10"]$a["11"]提取数据
      

  2.   

    foreach ($a as $a_key => $a_val)这个语句中的$a_key 是用来接受$a中键值的。$a中原来的key值有哪些,$a_key 就会分别赋予哪些,不是for中的循环变量
      

  3.   

    foreach的确是从0索引开始的,但准确来说,应该是第一个索引(如果是字母的索引,就没有0这个索引了)。