问答详情
源自:6-15 PHP中结构嵌套之循环嵌套

请问一下,$val的值从哪来的

<?php

 $students = array(

'2010'=>array('令狐冲',"59"),

'2011'=>array('林平之',"44"),

'2012'=>array('曲洋',"89"),

'2013'=>array('任盈盈',"92"),

'2014'=>array('向问天',"93"),

'2015'=>array('任我行',"87"),

'2016'=>array('冲虚',"58"),

'2017'=>array('方正',"74"),

'2018'=>array('岳不群',"91"),

'2019'=>array('宁中则',"90"),

);//10个学生的学号、姓名、分数,用数组存储

 

foreach($students as $key=>$val)

{ //使用循环结构遍历数组,获取学号 

     echo $key; //输出学号

echo ":";

//循环输出姓名和分数

foreach($val as $v)

{

echo $v; 

        echo $val;

}

echo "<br />";

}

?>

请问一下,根据我的理解$val对应名字的值,但是并没有输出$val的值,只写了"echo $v;",为什么$val的值就跟着出来了?????


提问者:芈麗蘺 2017-01-03 09:14

个回答

  • Zhong1
    2017-03-06 11:50:59
    已采纳

    在第一个foreach($students as $key=>$val)中遍历students 分为$key(20..)和 $val

    此时$val有两个值(姓名,分数)

    在第二个foreach($val as $v)中遍历的是$val 所以echo $v 才把 姓名和分数输出

  • 篱落
    2017-01-03 11:41:40

    在第二个foreach中foreach($val as $v),将$val as $v,在循环中打印了echo $v;就相当于是打印了$val